[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAK8P3a13gcF_+dkfxZW0u_YuJ92hY1JukWfzM+e30iM=YUhraQ@mail.gmail.com>
Date: Wed, 22 Jul 2020 10:15:04 +0200
From: Arnd Bergmann <arnd@...db.de>
To: Anson Huang <Anson.Huang@....com>
Cc: Russell King - ARM Linux <linux@...linux.org.uk>,
Shawn Guo <shawnguo@...nel.org>,
Sascha Hauer <s.hauer@...gutronix.de>,
Sascha Hauer <kernel@...gutronix.de>,
Fabio Estevam <festevam@...il.com>,
Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will@...nel.org>,
Linus Walleij <linus.walleij@...aro.org>,
Bartosz Golaszewski <bgolaszewski@...libre.com>,
Peter Chen <peter.chen@....com>, oleksandr.suvorov@...adex.com,
Andreas Kemnade <andreas@...nade.info>,
Peng Fan <peng.fan@....com>,
Hans Verkuil <hverkuil-cisco@...all.nl>,
Olof Johansson <olof@...om.net>,
Krzysztof Kozlowski <krzk@...nel.org>,
Alexandre Torgue <alexandre.torgue@...com>,
Patrice Chotard <patrice.chotard@...com>,
Marek Szyprowski <m.szyprowski@...sung.com>,
Joel Stanley <joel@....id.au>, Lubomir Rintel <lkundrak@...sk>,
Christian Gmeiner <christian.gmeiner@...il.com>,
Bjorn Andersson <bjorn.andersson@...aro.org>,
Leo Li <leoyang.li@....com>,
Geert Uytterhoeven <geert+renesas@...der.be>, michael@...le.cc,
Linux ARM <linux-arm-kernel@...ts.infradead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"open list:GPIO SUBSYSTEM" <linux-gpio@...r.kernel.org>,
NXP Linux Team <Linux-imx@....com>
Subject: Re: [PATCH V2 1/4] gpio: mxc: Support module build
On Wed, Jul 22, 2020 at 3:50 AM Anson Huang <Anson.Huang@....com> wrote:
>
> Change config to tristate, add module device table, module author,
> description and license to support module build for i.MX GPIO driver.
>
> As this is a SoC GPIO module, it provides common functions for most
> of the peripheral devices, such as GPIO pins control, secondary
> interrupt controller for GPIO pins IRQ etc., without GPIO driver, most
> of the peripheral devices will NOT work properly, so GPIO module is
> similar with clock, pinctrl driver that should be loaded ONCE and
> never unloaded.
>
> Since MXC GPIO driver needs to have init function to register syscore
> ops once, here still use subsys_initcall(), NOT module_platform_driver().
I'm not following this explanation.
Why is this driver using syscore_ops rather than
SIMPLE_DEV_PM_OPS() or similar?
Why can the driver not unregister the syscore_ops the way it
registers them when unloading the module?
Why do you need subsys_initcall() rather than a device_initcall()?
If the subsys_initcall() is indeed required here instead of
device_initcall(), how can it work if the driver is a loadable
module?
Arnd
Powered by blists - more mailing lists