Hi Philipp, This patch series adds support for the BCM7216 RESCAL reset controller which is necessary to initialize SATA and PCIe0/1 on that chip. Please let us know if you have any comments. Thanks! Changes in v3: - indented "base" variable with a space - return ret directly out of readl_poll_timeout() - removed additional register read after write, not necessary - removed call to platform_set_drvdata, unnecessary either - corrected Jim's email in Signed-off-by in patch #2 Changes in v2: - binding document is in YAML format per Rob's suggestion - indented bit definitions the same way for all definitions - moved reset logic to the .reset() callback - removed the XOR operation which is not necessary after clarifying with Jim that this was not necessary - use readl_poll_timeout() Jim Quinlan (2): dt-bindings: reset: Document BCM7216 RESCAL reset controller reset: Add Broadcom STB RESCAL reset controller .../reset/brcm,bcm7216-pcie-sata-rescal.yaml | 37 ++++++ drivers/reset/Kconfig | 7 ++ drivers/reset/Makefile | 1 + drivers/reset/reset-brcmstb-rescal.c | 107 ++++++++++++++++++ 4 files changed, 152 insertions(+) create mode 100644 Documentation/devicetree/bindings/reset/brcm,bcm7216-pcie-sata-rescal.yaml create mode 100644 drivers/reset/reset-brcmstb-rescal.c -- 2.17.1