Hi, ChenYu,

You are right, deferred probing is not an error, but i think this reordering
of initialization is useful for suppressing kernel's complaints .

On 08/16/2014 11:45 PM, Chen-Yu Tsai wrote:
On Sat, Aug 16, 2014 at 12:52 PM, Wills Wang <wills.wang.o...@gmail.com> wrote:

Hi,

No signed-off-by. No commit message . Not sent to maintainer,
nor the arm kernel mailing list. No one is going to take this.

Now, about the patch. AFAIK, deferred probing is part of the normal
driver/device resolution/probe process. In other words, it is not
an error.

There is no need to mess with the order that drivers/devices are
registered. If something breaks, _that_ driver should be fixed.

Otherwise we'd have to re-order the prcm mfd drivers to make a23 happy.


Cheers
ChenYu

---
  drivers/pinctrl/sunxi/pinctrl-sun4i-a10.c   | 13 ++++++++++++-
  drivers/pinctrl/sunxi/pinctrl-sun5i-a10s.c  | 13 ++++++++++++-
  drivers/pinctrl/sunxi/pinctrl-sun5i-a13.c   | 13 ++++++++++++-
  drivers/pinctrl/sunxi/pinctrl-sun6i-a31-r.c | 13 ++++++++++++-
  drivers/pinctrl/sunxi/pinctrl-sun6i-a31.c   | 13 ++++++++++++-
  drivers/pinctrl/sunxi/pinctrl-sun7i-a20.c   | 13 ++++++++++++-
  drivers/pinctrl/sunxi/pinctrl-sun8i-a23-r.c | 13 ++++++++++++-
  drivers/pinctrl/sunxi/pinctrl-sun8i-a23.c   | 13 ++++++++++++-
  8 files changed, 96 insertions(+), 8 deletions(-)

diff --git a/drivers/pinctrl/sunxi/pinctrl-sun4i-a10.c 
b/drivers/pinctrl/sunxi/pinctrl-sun4i-a10.c
index 86b608b..034e0eb 100644
--- a/drivers/pinctrl/sunxi/pinctrl-sun4i-a10.c
+++ b/drivers/pinctrl/sunxi/pinctrl-sun4i-a10.c
@@ -1033,7 +1033,18 @@ static struct platform_driver sun4i_a10_pinctrl_driver = 
{
                 .of_match_table = sun4i_a10_pinctrl_match,
         },
  };
-module_platform_driver(sun4i_a10_pinctrl_driver);
+
+static int __init sun4i_a10_pinctrl_init(void)
+{
+       return platform_driver_register(&sun4i_a10_pinctrl_driver);
+}
+arch_initcall(sun4i_a10_pinctrl_init);
+
+static void __exit sun4i_a10_pinctrl_exit(void)
+{
+       platform_driver_unregister(&sun4i_a10_pinctrl_driver);
+}
+module_exit(sun4i_a10_pinctrl_exit);

  MODULE_AUTHOR("Maxime Ripard <maxime.rip...@free-electrons.com");
  MODULE_DESCRIPTION("Allwinner A10 pinctrl driver");
diff --git a/drivers/pinctrl/sunxi/pinctrl-sun5i-a10s.c 
b/drivers/pinctrl/sunxi/pinctrl-sun5i-a10s.c
index 2fa7430..0a20d24 100644
--- a/drivers/pinctrl/sunxi/pinctrl-sun5i-a10s.c
+++ b/drivers/pinctrl/sunxi/pinctrl-sun5i-a10s.c
@@ -684,7 +684,18 @@ static struct platform_driver sun5i_a10s_pinctrl_driver = {
                 .of_match_table = sun5i_a10s_pinctrl_match,
         },
  };
-module_platform_driver(sun5i_a10s_pinctrl_driver);
+
+static int __init sun5i_a10s_pinctrl_init(void)
+{
+       return platform_driver_register(&sun5i_a10s_pinctrl_driver);
+}
+arch_initcall(sun5i_a10s_pinctrl_init);
+
+static void __exit sun5i_a10s_pinctrl_exit(void)
+{
+       platform_driver_unregister(&sun5i_a10s_pinctrl_driver);
+}
+module_exit(sun5i_a10s_pinctrl_exit);

  MODULE_AUTHOR("Maxime Ripard <maxime.rip...@free-electrons.com");
  MODULE_DESCRIPTION("Allwinner A10s pinctrl driver");
diff --git a/drivers/pinctrl/sunxi/pinctrl-sun5i-a13.c 
b/drivers/pinctrl/sunxi/pinctrl-sun5i-a13.c
index e47c33d..13e805e 100644
--- a/drivers/pinctrl/sunxi/pinctrl-sun5i-a13.c
+++ b/drivers/pinctrl/sunxi/pinctrl-sun5i-a13.c
@@ -402,7 +402,18 @@ static struct platform_driver sun5i_a13_pinctrl_driver = {
                 .of_match_table = sun5i_a13_pinctrl_match,
         },
  };
-module_platform_driver(sun5i_a13_pinctrl_driver);
+
+static int __init sun5i_a13_pinctrl_init(void)
+{
+       return platform_driver_register(&sun5i_a13_pinctrl_driver);
+}
+arch_initcall(sun5i_a13_pinctrl_init);
+
+static void __exit sun5i_a13_pinctrl_exit(void)
+{
+       platform_driver_unregister(&sun5i_a13_pinctrl_driver);
+}
+module_exit(sun5i_a13_pinctrl_exit);

  MODULE_AUTHOR("Maxime Ripard <maxime.rip...@free-electrons.com");
  MODULE_DESCRIPTION("Allwinner A13 pinctrl driver");
diff --git a/drivers/pinctrl/sunxi/pinctrl-sun6i-a31-r.c 
b/drivers/pinctrl/sunxi/pinctrl-sun6i-a31-r.c
index 9a2517b..21fc080 100644
--- a/drivers/pinctrl/sunxi/pinctrl-sun6i-a31-r.c
+++ b/drivers/pinctrl/sunxi/pinctrl-sun6i-a31-r.c
@@ -134,7 +134,18 @@ static struct platform_driver sun6i_a31_r_pinctrl_driver = 
{
                 .of_match_table = sun6i_a31_r_pinctrl_match,
         },
  };
-module_platform_driver(sun6i_a31_r_pinctrl_driver);
+
+static int __init sun6i_a31_r_pinctrl_init(void)
+{
+       return platform_driver_register(&sun6i_a31_r_pinctrl_driver);
+}
+arch_initcall(sun6i_a31_r_pinctrl_init);
+
+static void __exit sun6i_a31_r_pinctrl_exit(void)
+{
+       platform_driver_unregister(&sun6i_a31_r_pinctrl_driver);
+}
+module_exit(sun6i_a31_r_pinctrl_exit);

  MODULE_AUTHOR("Boris Brezillon <boris.brezil...@free-electrons.com");
  MODULE_AUTHOR("Maxime Ripard <maxime.rip...@free-electrons.com");
diff --git a/drivers/pinctrl/sunxi/pinctrl-sun6i-a31.c 
b/drivers/pinctrl/sunxi/pinctrl-sun6i-a31.c
index a2b4b85..73c25b0 100644
--- a/drivers/pinctrl/sunxi/pinctrl-sun6i-a31.c
+++ b/drivers/pinctrl/sunxi/pinctrl-sun6i-a31.c
@@ -931,7 +931,18 @@ static struct platform_driver sun6i_a31_pinctrl_driver = {
                 .of_match_table = sun6i_a31_pinctrl_match,
         },
  };
-module_platform_driver(sun6i_a31_pinctrl_driver);
+
+static int __init sun6i_a31_pinctrl_init(void)
+{
+       return platform_driver_register(&sun6i_a31_pinctrl_driver);
+}
+arch_initcall(sun6i_a31_pinctrl_init);
+
+static void __exit sun6i_a31_pinctrl_exit(void)
+{
+       platform_driver_unregister(&sun6i_a31_pinctrl_driver);
+}
+module_exit(sun6i_a31_pinctrl_exit);

  MODULE_AUTHOR("Maxime Ripard <maxime.rip...@free-electrons.com");
  MODULE_DESCRIPTION("Allwinner A31 pinctrl driver");
diff --git a/drivers/pinctrl/sunxi/pinctrl-sun7i-a20.c 
b/drivers/pinctrl/sunxi/pinctrl-sun7i-a20.c
index dac99e0..f5e9744 100644
--- a/drivers/pinctrl/sunxi/pinctrl-sun7i-a20.c
+++ b/drivers/pinctrl/sunxi/pinctrl-sun7i-a20.c
@@ -1059,7 +1059,18 @@ static struct platform_driver sun7i_a20_pinctrl_driver = 
{
                 .of_match_table = sun7i_a20_pinctrl_match,
         },
  };
-module_platform_driver(sun7i_a20_pinctrl_driver);
+
+static int __init sun7i_a20_pinctrl_init(void)
+{
+       return platform_driver_register(&sun7i_a20_pinctrl_driver);
+}
+arch_initcall(sun7i_a20_pinctrl_init);
+
+static void __exit sun7i_a20_pinctrl_exit(void)
+{
+       platform_driver_unregister(&sun7i_a20_pinctrl_driver);
+}
+module_exit(sun7i_a20_pinctrl_exit);

  MODULE_AUTHOR("Maxime Ripard <maxime.rip...@free-electrons.com");
  MODULE_DESCRIPTION("Allwinner A20 pinctrl driver");
diff --git a/drivers/pinctrl/sunxi/pinctrl-sun8i-a23-r.c 
b/drivers/pinctrl/sunxi/pinctrl-sun8i-a23-r.c
index 90f3b3a..d26a5b1 100644
--- a/drivers/pinctrl/sunxi/pinctrl-sun8i-a23-r.c
+++ b/drivers/pinctrl/sunxi/pinctrl-sun8i-a23-r.c
@@ -133,7 +133,18 @@ static struct platform_driver sun8i_a23_r_pinctrl_driver = 
{
                 .of_match_table = sun8i_a23_r_pinctrl_match,
         },
  };
-module_platform_driver(sun8i_a23_r_pinctrl_driver);
+
+static int __init sun8i_a23_r_pinctrl_init(void)
+{
+       return platform_driver_register(&sun8i_a23_r_pinctrl_driver);
+}
+arch_initcall(sun8i_a23_r_pinctrl_init);
+
+static void __exit sun8i_a23_r_pinctrl_exit(void)
+{
+       platform_driver_unregister(&sun8i_a23_r_pinctrl_driver);
+}
+module_exit(sun8i_a23_r_pinctrl_exit);

  MODULE_AUTHOR("Chen-Yu Tsai <w...@csie.org>");
  MODULE_AUTHOR("Boris Brezillon <boris.brezil...@free-electrons.com");
diff --git a/drivers/pinctrl/sunxi/pinctrl-sun8i-a23.c 
b/drivers/pinctrl/sunxi/pinctrl-sun8i-a23.c
index ac71e8c..d810a35 100644
--- a/drivers/pinctrl/sunxi/pinctrl-sun8i-a23.c
+++ b/drivers/pinctrl/sunxi/pinctrl-sun8i-a23.c
@@ -585,7 +585,18 @@ static struct platform_driver sun8i_a23_pinctrl_driver = {
                 .of_match_table = sun8i_a23_pinctrl_match,
         },
  };
-module_platform_driver(sun8i_a23_pinctrl_driver);
+
+static int __init sun8i_a23_pinctrl_init(void)
+{
+       return platform_driver_register(&sun8i_a23_pinctrl_driver);
+}
+arch_initcall(sun8i_a23_pinctrl_init);
+
+static void __exit sun8i_a23_pinctrl_exit(void)
+{
+       platform_driver_unregister(&sun8i_a23_pinctrl_driver);
+}
+module_exit(sun8i_a23_pinctrl_exit);

  MODULE_AUTHOR("Chen-Yu Tsai <w...@csie.org>");
  MODULE_AUTHOR("Maxime Ripard <maxime.rip...@free-electrons.com");
--
1.8.3.2

--
You received this message because you are subscribed to the Google Groups 
"linux-sunxi" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups 
"linux-sunxi" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to