We see an increasing number of non-modular drivers using the modular_driver() type register functions. There are several downsides to this (as listed in the 1st commit log), so here we introduce similar non-modular macros for builtin drivers.
Then we convert builtin drivers (controlled by a bool Kconfig) by making the following type of changes: module_platform_driver() ---> builtin_platform_driver() module_platform_driver_probe() ---> builtin_platform_driver_probe(). The set of drivers that are converted here are just the ones that showed up as relying on an implicit include of <module.h> during a pending header cleanup. So we convert them here vs. adding an include of <module.h> to non-modular code to avoid compile fails. Additonal conversions can be done asynchronously at any time. These changes, and the pending header cleanup are a refactoring of a larger series[1] into smaller, more easily reviewed chunks that share a common theme. Note to maintainers: None of the conversion patches here can be taken into subtrees individually, since they all rely on the 1st patch to add the builtin macros. But I'll add Acks as requested. Thanks, Paul. [1] https://marc.info/?l=linux-kernel&m=139033951228828 --- Cc: Alexandre Courbot <[email protected]> Cc: Arnd Bergmann <[email protected]> Cc: Axel Lin <[email protected]> Cc: Daniel Lezcano <[email protected]> Cc: David Woodhouse <[email protected]> Cc: Dmitry Eremin-Solenikov <[email protected]> Cc: Greg Kroah-Hartman <[email protected]> Cc: Kukjin Kim <[email protected]> Cc: Linus Walleij <[email protected]> Cc: Michal Simek <[email protected]> Cc: "Rafael J. Wysocki" <[email protected]> Cc: Sebastian Reichel <[email protected]> Cc: Stephen Warren <[email protected]> Cc: Thierry Reding <[email protected]> Cc: Viresh Kumar <[email protected]> Cc: [email protected] Cc: [email protected] Cc: [email protected] -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

