diff options
author | Arnd Bergmann <arnd@arndb.de> | 2021-01-30 11:56:29 +0100 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2021-01-30 11:56:30 +0100 |
commit | 7cc623b85aef7a336152f5cfc28ef5622ded1351 (patch) | |
tree | c2c4ab9464939ec32a37e93a573c2a50f10fabc9 /drivers | |
parent | e6babd8dded31c0235c2e83871d290dfd407e4fa (diff) | |
parent | d17655759b3fc660ea49bd7be665c193030c77c0 (diff) | |
download | lwn-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/Kconfig | 2 | ||||
-rw-r--r-- | drivers/reset/core.c | 4 | ||||
-rw-r--r-- | drivers/reset/hisilicon/reset-hi3660.c | 9 | ||||
-rw-r--r-- | drivers/reset/reset-simple.c | 2 |
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 }, |