瀏覽代碼

pinctrl: iproc: Fix iProc and NSP GPIO support

Since commit 44a7185c2ae6 ("of/platform: Add common method to populate
default bus"), ARM64 platform devices are populated at the
arch_initcall_sync level; as a result, the platform_driver_probe calls
in both the iProc and NSP GPIO drivers fail with -ENODEV since by that
time the platform device was not yet registered.

Replace platform_driver_probe with platform_driver_register, that allow
the device to be register later

Fixes: 44a7185c2ae6 ("of/platform: Add common method to populate default bus")
Signed-off-by: Ray Jui <ray.jui@broadcom.com>
Tested-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Ray Jui 8 年之前
父節點
當前提交
091c531b09
共有 2 個文件被更改,包括 2 次插入2 次删除
  1. 1 1
      drivers/pinctrl/bcm/pinctrl-iproc-gpio.c
  2. 1 1
      drivers/pinctrl/bcm/pinctrl-nsp-gpio.c

+ 1 - 1
drivers/pinctrl/bcm/pinctrl-iproc-gpio.c

@@ -844,6 +844,6 @@ static struct platform_driver iproc_gpio_driver = {
 
 static int __init iproc_gpio_init(void)
 {
-	return platform_driver_probe(&iproc_gpio_driver, iproc_gpio_probe);
+	return platform_driver_register(&iproc_gpio_driver);
 }
 arch_initcall_sync(iproc_gpio_init);

+ 1 - 1
drivers/pinctrl/bcm/pinctrl-nsp-gpio.c

@@ -741,6 +741,6 @@ static struct platform_driver nsp_gpio_driver = {
 
 static int __init nsp_gpio_init(void)
 {
-	return platform_driver_probe(&nsp_gpio_driver, nsp_gpio_probe);
+	return platform_driver_register(&nsp_gpio_driver);
 }
 arch_initcall_sync(nsp_gpio_init);