summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2021-01-30 11:56:29 +0100
committerArnd Bergmann <arnd@arndb.de>2021-01-30 11:56:30 +0100
commit7cc623b85aef7a336152f5cfc28ef5622ded1351 (patch)
treec2c4ab9464939ec32a37e93a573c2a50f10fabc9 /drivers
parente6babd8dded31c0235c2e83871d290dfd407e4fa (diff)
parentd17655759b3fc660ea49bd7be665c193030c77c0 (diff)
downloadlwn-7cc623b85aef7a336152f5cfc28ef5622ded1351.tar.gz
lwn-7cc623b85aef7a336152f5cfc28ef5622ded1351.zip
Merge tag 'reset-for-v5.12' of git://git.pengutronix.de/pza/linux into arm/drivers
Reset controller updates for v5.12 This tag adds support for Broadcom BCM4908 PCIe resets, corrects the Hisilicon vendor prefix, adds a missing API function devm_reset_control_get_optional_exclusive_released(), and fixes the kernel-doc markup for the __device_reset() function. * tag 'reset-for-v5.12' of git://git.pengutronix.de/pza/linux: reset: Add devm_reset_control_get_optional_exclusive_released() reset: core: fix a kernel-doc markup dt-bindings: reset: convert Hisilicon reset controller bindings to json-schema dt-bindings: reset: correct vendor prefix hisi to hisilicon reset: hisilicon: correct vendor prefix reset: simple: add BCM4908 MISC PCIe reset controller support dt-bindings: reset: document Broadcom's BCM4908 PCIe reset binding Link: https://lore.kernel.org/r/20210129153108.GA26994@pengutronix.de Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/reset/Kconfig2
-rw-r--r--drivers/reset/core.c4
-rw-r--r--drivers/reset/hisilicon/reset-hi3660.c9
-rw-r--r--drivers/reset/reset-simple.c2
4 files changed, 12 insertions, 5 deletions
diff --git a/drivers/reset/Kconfig b/drivers/reset/Kconfig
index 71ab75a46491..752bef7e564f 100644
--- a/drivers/reset/Kconfig
+++ b/drivers/reset/Kconfig
@@ -173,7 +173,7 @@ config RESET_SCMI
config RESET_SIMPLE
bool "Simple Reset Controller Driver" if COMPILE_TEST
- default ARCH_AGILEX || ARCH_ASPEED || ARCH_BITMAIN || ARCH_REALTEK || ARCH_STM32 || ARCH_STRATIX10 || ARCH_SUNXI || ARCH_ZX || ARC
+ default ARCH_AGILEX || ARCH_ASPEED || ARCH_BCM4908 || ARCH_BITMAIN || ARCH_REALTEK || ARCH_STM32 || ARCH_STRATIX10 || ARCH_SUNXI || ARCH_ZX || ARC
help
This enables a simple reset controller driver for reset lines that
that can be asserted and deasserted by toggling bits in a contiguous,
diff --git a/drivers/reset/core.c b/drivers/reset/core.c
index 34e89aa0fb5e..dbf881b586d9 100644
--- a/drivers/reset/core.c
+++ b/drivers/reset/core.c
@@ -875,8 +875,8 @@ struct reset_control *__devm_reset_control_get(struct device *dev,
EXPORT_SYMBOL_GPL(__devm_reset_control_get);
/**
- * device_reset - find reset controller associated with the device
- * and perform reset
+ * __device_reset - find reset controller associated with the device
+ * and perform reset
* @dev: device to be reset by the controller
* @optional: whether it is optional to reset the device
*
diff --git a/drivers/reset/hisilicon/reset-hi3660.c b/drivers/reset/hisilicon/reset-hi3660.c
index a7d4445924e5..965f5ceba7d8 100644
--- a/drivers/reset/hisilicon/reset-hi3660.c
+++ b/drivers/reset/hisilicon/reset-hi3660.c
@@ -83,9 +83,14 @@ static int hi3660_reset_probe(struct platform_device *pdev)
if (!rc)
return -ENOMEM;
- rc->map = syscon_regmap_lookup_by_phandle(np, "hisi,rst-syscon");
+ rc->map = syscon_regmap_lookup_by_phandle(np, "hisilicon,rst-syscon");
+ if (rc->map == ERR_PTR(-ENODEV)) {
+ /* fall back to the deprecated compatible */
+ rc->map = syscon_regmap_lookup_by_phandle(np,
+ "hisi,rst-syscon");
+ }
if (IS_ERR(rc->map)) {
- dev_err(dev, "failed to get hi3660,rst-syscon\n");
+ dev_err(dev, "failed to get hisilicon,rst-syscon\n");
return PTR_ERR(rc->map);
}
diff --git a/drivers/reset/reset-simple.c b/drivers/reset/reset-simple.c
index e066614818a3..4dda0daf2c6f 100644
--- a/drivers/reset/reset-simple.c
+++ b/drivers/reset/reset-simple.c
@@ -146,6 +146,8 @@ static const struct of_device_id reset_simple_dt_ids[] = {
{ .compatible = "aspeed,ast2500-lpc-reset" },
{ .compatible = "bitmain,bm1880-reset",
.data = &reset_simple_active_low },
+ { .compatible = "brcm,bcm4908-misc-pcie-reset",
+ .data = &reset_simple_active_low },
{ .compatible = "snps,dw-high-reset" },
{ .compatible = "snps,dw-low-reset",
.data = &reset_simple_active_low },