diff options
Diffstat (limited to 'drivers/mfd/sta2x11-mfd.c')
-rw-r--r-- | drivers/mfd/sta2x11-mfd.c | 36 |
1 files changed, 10 insertions, 26 deletions
diff --git a/drivers/mfd/sta2x11-mfd.c b/drivers/mfd/sta2x11-mfd.c index b3e5c6f..9292202 100644 --- a/drivers/mfd/sta2x11-mfd.c +++ b/drivers/mfd/sta2x11-mfd.c @@ -372,12 +372,6 @@ static struct platform_driver sta2x11_sctl_platform_driver = { .probe = sta2x11_sctl_probe, }; -static int __init sta2x11_sctl_init(void) -{ - pr_info("%s\n", __func__); - return platform_driver_register(&sta2x11_sctl_platform_driver); -} - static struct platform_driver sta2x11_platform_driver = { .driver = { .name = STA2X11_MFD_APBREG_NAME, @@ -385,12 +379,6 @@ static struct platform_driver sta2x11_platform_driver = { .probe = sta2x11_apbreg_probe, }; -static int __init sta2x11_apbreg_init(void) -{ - pr_info("%s\n", __func__); - return platform_driver_register(&sta2x11_platform_driver); -} - static struct platform_driver sta2x11_apb_soc_regs_platform_driver = { .driver = { .name = STA2X11_MFD_APB_SOC_REGS_NAME, @@ -398,12 +386,6 @@ static struct platform_driver sta2x11_apb_soc_regs_platform_driver = { .probe = sta2x11_apb_soc_regs_probe, }; -static int __init sta2x11_apb_soc_regs_init(void) -{ - pr_info("%s\n", __func__); - return platform_driver_register(&sta2x11_apb_soc_regs_platform_driver); -} - static struct platform_driver sta2x11_scr_platform_driver = { .driver = { .name = STA2X11_MFD_SCR_NAME, @@ -411,13 +393,18 @@ static struct platform_driver sta2x11_scr_platform_driver = { .probe = sta2x11_scr_probe, }; -static int __init sta2x11_scr_init(void) +static struct platform_driver * const drivers[] = { + &sta2x11_platform_driver, + &sta2x11_sctl_platform_driver, + &sta2x11_apb_soc_regs_platform_driver, + &sta2x11_scr_platform_driver, +}; + +static int __init sta2x11_drivers_init(void) { - pr_info("%s\n", __func__); - return platform_driver_register(&sta2x11_scr_platform_driver); + return platform_register_drivers(drivers, ARRAY_SIZE(drivers)); } - /* * What follows are the PCI devices that host the above pdevs. * Each logic block is 4kB and they are all consecutive: we use this info. @@ -664,10 +651,7 @@ static int __init sta2x11_mfd_init(void) * prepares platform drivers very early and probe the PCI device later, * but before other PCI devices. */ -subsys_initcall(sta2x11_apbreg_init); -subsys_initcall(sta2x11_sctl_init); -subsys_initcall(sta2x11_apb_soc_regs_init); -subsys_initcall(sta2x11_scr_init); +subsys_initcall(sta2x11_drivers_init); rootfs_initcall(sta2x11_mfd_init); MODULE_LICENSE("GPL v2"); |