diff mbox series

pinctrl: meson: Correct the driver GPIO declaration

Message ID 20211113020034.263468-1-sjg@chromium.org
State Changes Requested
Delegated to: Tom Rini
Headers show
Series pinctrl: meson: Correct the driver GPIO declaration | expand

Commit Message

Simon Glass Nov. 13, 2021, 2 a.m. UTC
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(-)

Comments

Tom Rini Nov. 13, 2021, 4:08 a.m. UTC | #1
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
Simon Glass Nov. 13, 2021, 2:08 p.m. UTC | #2
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
diff mbox series

Patch

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[] = {