All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michal Simek <michal.simek@xilinx.com>
To: linux-kernel@vger.kernel.org, monstr@monstr.eu
Cc: "Nava kishore Manne" <nava.manne@xilinx.com>,
	"Sören Brinkmann" <soren.brinkmann@xilinx.com>,
	"Steffen Trumtrar" <s.trumtrar@pengutronix.de>,
	"Linus Walleij" <linus.walleij@linaro.org>,
	"Peter Crosthwaite" <peter.crosthwaite@xilinx.com>,
	linux-gpio@vger.kernel.org, "Rob Herring" <robherring2@gmail.com>,
	"Josh Cartwright" <josh.cartwright@ni.com>,
	linux-arm-kernel@lists.infradead.org
Subject: [PATCH 3/8] gpio: zynq: Shift zynq_gpio_init() to subsys_initcall level
Date: Mon,  7 Aug 2017 13:01:56 +0200	[thread overview]
Message-ID: <a05cc4f104097bef71ed381229aa8c746717ebce.1502103715.git.michal.simek@xilinx.com> (raw)
In-Reply-To: <cover.1502103715.git.michal.simek@xilinx.com>
In-Reply-To: <cover.1502103715.git.michal.simek@xilinx.com>

From: Nava kishore Manne <nava.manne@xilinx.com>

In general situation on-SoC GPIO controller drivers should be probed
after pinctrl/pinmux controller driver, because on-SoC GPIOs utilize a
pin/pad as a resource provided and controlled by pinctrl subsystem.

  GPIO must come after pinctrl as gpios may need to mux pins....etc

Looking at Xilinx SoC series pinctrl drivers, zynq*_pinctrl_init()
functions are called at arch_initcall init levels,
so the change of initcall level for gpio-zynq driver from
postcore_initcall to subsys_initcall level is sufficient. Also note
that the most of GPIO controller drivers settled at subsys_initcall
level.

If pinctrl subsystem manages pads with GPIO functions, the change is
needed to avoid unwanted driver probe deferrals during kernel boot.

Signed-off-by: Nava kishore Manne <navam@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
---

 drivers/gpio/gpio-zynq.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpio/gpio-zynq.c b/drivers/gpio/gpio-zynq.c
index 5198fa6e016a..bcf11f0ef5c3 100644
--- a/drivers/gpio/gpio-zynq.c
+++ b/drivers/gpio/gpio-zynq.c
@@ -929,7 +929,7 @@ static int __init zynq_gpio_init(void)
 {
 	return platform_driver_register(&zynq_gpio_driver);
 }
-postcore_initcall(zynq_gpio_init);
+subsys_initcall(zynq_gpio_init);
 
 static void __exit zynq_gpio_exit(void)
 {
-- 
1.9.1

WARNING: multiple messages have this Message-ID (diff)
From: michal.simek@xilinx.com (Michal Simek)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 3/8] gpio: zynq: Shift zynq_gpio_init() to subsys_initcall level
Date: Mon,  7 Aug 2017 13:01:56 +0200	[thread overview]
Message-ID: <a05cc4f104097bef71ed381229aa8c746717ebce.1502103715.git.michal.simek@xilinx.com> (raw)
In-Reply-To: <cover.1502103715.git.michal.simek@xilinx.com>

From: Nava kishore Manne <nava.manne@xilinx.com>

In general situation on-SoC GPIO controller drivers should be probed
after pinctrl/pinmux controller driver, because on-SoC GPIOs utilize a
pin/pad as a resource provided and controlled by pinctrl subsystem.

  GPIO must come after pinctrl as gpios may need to mux pins....etc

Looking at Xilinx SoC series pinctrl drivers, zynq*_pinctrl_init()
functions are called at arch_initcall init levels,
so the change of initcall level for gpio-zynq driver from
postcore_initcall to subsys_initcall level is sufficient. Also note
that the most of GPIO controller drivers settled at subsys_initcall
level.

If pinctrl subsystem manages pads with GPIO functions, the change is
needed to avoid unwanted driver probe deferrals during kernel boot.

Signed-off-by: Nava kishore Manne <navam@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
---

 drivers/gpio/gpio-zynq.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpio/gpio-zynq.c b/drivers/gpio/gpio-zynq.c
index 5198fa6e016a..bcf11f0ef5c3 100644
--- a/drivers/gpio/gpio-zynq.c
+++ b/drivers/gpio/gpio-zynq.c
@@ -929,7 +929,7 @@ static int __init zynq_gpio_init(void)
 {
 	return platform_driver_register(&zynq_gpio_driver);
 }
-postcore_initcall(zynq_gpio_init);
+subsys_initcall(zynq_gpio_init);
 
 static void __exit zynq_gpio_exit(void)
 {
-- 
1.9.1

  parent reply	other threads:[~2017-08-07 11:01 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-07 11:01 [PATCH 0/8] Zynq GPIO driver changes Michal Simek
2017-08-07 11:01 ` Michal Simek
2017-08-07 11:01 ` [PATCH 1/8] gpio: zynq: Add support for suspend resume Michal Simek
2017-08-07 11:01   ` Michal Simek
2017-08-07 11:01   ` Michal Simek
2017-08-14 13:44   ` Linus Walleij
2017-08-14 13:44     ` Linus Walleij
2017-08-07 11:01 ` [PATCH 2/8] gpio: zynq: Wakeup gpio controller when it is used as IRQ controller Michal Simek
2017-08-07 11:01   ` Michal Simek
2017-08-14 13:53   ` Linus Walleij
2017-08-14 13:53     ` Linus Walleij
2017-08-14 14:33     ` Michal Simek
2017-08-14 14:33       ` Michal Simek
2017-08-22 12:57       ` Linus Walleij
2017-08-22 12:57         ` Linus Walleij
2019-01-07 15:42       ` Thomas Petazzoni
2019-01-07 15:42         ` Thomas Petazzoni
2019-01-08 13:21         ` Michal Simek
2019-01-08 13:21           ` Michal Simek
2019-01-11  9:54         ` Linus Walleij
2019-01-11  9:54           ` Linus Walleij
2019-01-11 12:54           ` Thomas Petazzoni
2019-01-11 12:54             ` Thomas Petazzoni
2019-01-11 14:37             ` Linus Walleij
2019-01-11 14:37               ` Linus Walleij
2019-01-11 14:37               ` Linus Walleij
2019-01-21  6:11               ` Shubhrajyoti Datta
2019-01-21  6:11                 ` Shubhrajyoti Datta
2019-01-21  6:11                 ` Shubhrajyoti Datta
2017-08-07 11:01 ` Michal Simek [this message]
2017-08-07 11:01   ` [PATCH 3/8] gpio: zynq: Shift zynq_gpio_init() to subsys_initcall level Michal Simek
2017-08-14 13:55   ` Linus Walleij
2017-08-14 13:55     ` Linus Walleij
2017-08-14 14:15     ` Michal Simek
2017-08-14 14:15       ` Michal Simek
2017-08-22 13:02       ` Linus Walleij
2017-08-22 13:02         ` Linus Walleij
2017-08-07 11:01 ` [PATCH 4/8] gpio: zynq: Provided workaround for GPIO Michal Simek
2017-08-07 11:01   ` Michal Simek
2017-08-14 13:57   ` Linus Walleij
2017-08-14 13:57     ` Linus Walleij
2017-08-14 14:01     ` Michal Simek
2017-08-14 14:01       ` Michal Simek
2017-08-07 11:01 ` [PATCH 5/8] gpio: zynq: Fix kernel doc warnings Michal Simek
2017-08-07 11:01   ` Michal Simek
2017-08-14 13:58   ` Linus Walleij
2017-08-14 13:58     ` Linus Walleij
2017-08-07 11:01 ` [PATCH 6/8] gpio: zynq: Fix empty lines in driver Michal Simek
2017-08-07 11:01   ` Michal Simek
2017-08-14 13:59   ` Linus Walleij
2017-08-14 13:59     ` Linus Walleij
2017-08-07 11:02 ` [PATCH 7/8] gpio: zynq: Fix warnings in the driver Michal Simek
2017-08-07 11:02   ` Michal Simek
2017-08-14 14:00   ` Linus Walleij
2017-08-14 14:00     ` Linus Walleij
2017-08-07 11:02 ` [PATCH 8/8] gpio: zynq: Fix driver function parameters alignment Michal Simek
2017-08-07 11:02   ` Michal Simek
2017-08-14 14:01   ` Linus Walleij
2017-08-14 14:01     ` Linus Walleij
2017-08-14 14:03     ` Michal Simek
2017-08-14 14:03       ` Michal Simek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a05cc4f104097bef71ed381229aa8c746717ebce.1502103715.git.michal.simek@xilinx.com \
    --to=michal.simek@xilinx.com \
    --cc=josh.cartwright@ni.com \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=monstr@monstr.eu \
    --cc=nava.manne@xilinx.com \
    --cc=peter.crosthwaite@xilinx.com \
    --cc=robherring2@gmail.com \
    --cc=s.trumtrar@pengutronix.de \
    --cc=soren.brinkmann@xilinx.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.