Hi Chester, On Mon, Nov 28, 2022 at 2:49 AM Chester Lin <clin@xxxxxxxx> wrote: > +static struct platform_driver s32g_pinctrl_driver = { > + .driver = { > + .name = "s32g-siul2-pinctrl", > + .owner = THIS_MODULE, > + .of_match_table = s32_pinctrl_of_match, > + .pm = &s32g_pinctrl_pm_ops, > + }, > + .probe = s32g_pinctrl_probe, > + .remove = s32_pinctrl_remove, Do you really want to allow this pinctrl driver to be removed? In other imx8m pinctrl drivers we pass: .suppress_bind_attrs = true, Check drivers/pinctrl/freescale/pinctrl-imx8mm.c for example. > +module_platform_driver(s32g_pinctrl_driver); And we also register it in arch_initcall() level. Maybe you want to align these points with imx8m?