[PATCH] pinctrl: meson: Correct the driver GPIO declaration

This should use the provided U_BOOT_DRIVER() macro so that the driver gets added to the appropriate linker list. Fix it.
Signed-off-by: Simon Glass sjg@chromium.org Fixes: 7c9dcfed50f ("pinctrl: meson: rework gx pmx function") ---
drivers/pinctrl/meson/pinctrl-meson-gx-pmx.c | 2 +- drivers/pinctrl/meson/pinctrl-meson-gx.h | 2 +- drivers/pinctrl/meson/pinctrl-meson-gxbb.c | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/pinctrl/meson/pinctrl-meson-gx-pmx.c b/drivers/pinctrl/meson/pinctrl-meson-gx-pmx.c index 159f3406a20..99502d89c6c 100644 --- a/drivers/pinctrl/meson/pinctrl-meson-gx-pmx.c +++ b/drivers/pinctrl/meson/pinctrl-meson-gx-pmx.c @@ -145,7 +145,7 @@ static const struct dm_gpio_ops meson_gx_gpio_ops = { .direction_output = meson_gpio_direction_output, };
-const struct driver meson_gx_gpio_driver = { +U_BOOT_DRIVER(meson_gx_gpio_driver) = { .name = "meson-gx-gpio", .id = UCLASS_GPIO, .probe = meson_gpio_probe, diff --git a/drivers/pinctrl/meson/pinctrl-meson-gx.h b/drivers/pinctrl/meson/pinctrl-meson-gx.h index 4c1aa1a3002..c70c1f51c6d 100644 --- a/drivers/pinctrl/meson/pinctrl-meson-gx.h +++ b/drivers/pinctrl/meson/pinctrl-meson-gx.h @@ -43,6 +43,6 @@ struct meson_gx_pmx_data { }
extern const struct pinctrl_ops meson_gx_pinctrl_ops; -extern const struct driver meson_gx_gpio_driver; +extern U_BOOT_DRIVER(meson_gx_gpio_driver);
#endif /* __PINCTRL_MESON_GX_H__ */ diff --git a/drivers/pinctrl/meson/pinctrl-meson-gxbb.c b/drivers/pinctrl/meson/pinctrl-meson-gxbb.c index 8c01c739068..93a895c9fa7 100644 --- a/drivers/pinctrl/meson/pinctrl-meson-gxbb.c +++ b/drivers/pinctrl/meson/pinctrl-meson-gxbb.c @@ -439,7 +439,7 @@ struct meson_pinctrl_data meson_gxbb_periphs_pinctrl_data = { .num_groups = ARRAY_SIZE(meson_gxbb_periphs_groups), .num_funcs = ARRAY_SIZE(meson_gxbb_periphs_functions), .num_banks = ARRAY_SIZE(meson_gxbb_periphs_banks), - .gpio_driver = &meson_gx_gpio_driver, + .gpio_driver = DM_DRIVER_REF(meson_gx_gpio_driver), };
struct meson_pinctrl_data meson_gxbb_aobus_pinctrl_data = { @@ -452,7 +452,7 @@ struct meson_pinctrl_data meson_gxbb_aobus_pinctrl_data = { .num_groups = ARRAY_SIZE(meson_gxbb_aobus_groups), .num_funcs = ARRAY_SIZE(meson_gxbb_aobus_functions), .num_banks = ARRAY_SIZE(meson_gxbb_aobus_banks), - .gpio_driver = &meson_gx_gpio_driver, + .gpio_driver = DM_DRIVER_REF(meson_gx_gpio_driver), };
static const struct udevice_id meson_gxbb_pinctrl_match[] = {

On Fri, Nov 12, 2021 at 07:00:34PM -0700, Simon Glass wrote:
This should use the provided U_BOOT_DRIVER() macro so that the driver gets added to the appropriate linker list. Fix it.
Signed-off-by: Simon Glass sjg@chromium.org Fixes: 7c9dcfed50f ("pinctrl: meson: rework gx pmx function")
Doesn't build for me: /home/trini/work/u-boot/u-boot/drivers/pinctrl/meson/pinctrl-meson-gxl.c:704:28: error: 'meson_ gx_gpio_driver' undeclared here (not in a function); did you mean 'meson_gpio_probe'? 704 | .gpio_driver = &meson_gx_gpio_driver, | ^~~~~~~~~~~~~~~~~~~~ | meson_gpio_probe
For libretech-cc

Hi Tom,
On Fri, 12 Nov 2021 at 21:08, Tom Rini trini@konsulko.com wrote:
On Fri, Nov 12, 2021 at 07:00:34PM -0700, Simon Glass wrote:
This should use the provided U_BOOT_DRIVER() macro so that the driver gets added to the appropriate linker list. Fix it.
Signed-off-by: Simon Glass sjg@chromium.org Fixes: 7c9dcfed50f ("pinctrl: meson: rework gx pmx function")
Doesn't build for me: /home/trini/work/u-boot/u-boot/drivers/pinctrl/meson/pinctrl-meson-gxl.c:704:28: error: 'meson_ gx_gpio_driver' undeclared here (not in a function); did you mean 'meson_gpio_probe'? 704 | .gpio_driver = &meson_gx_gpio_driver, | ^~~~~~~~~~~~~~~~~~~~ | meson_gpio_probe
For libretech-cc
Oh I only fixed one driver and was building odroid-c2 (just a guess). I will send v2 that works with 'buildman meson'.
Regards, Simon
participants (2)
-
Simon Glass
-
Tom Rini