From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Gortmaker Subject: [PATCH 0/7] Introduce builtin_driver and use it for non-modular code Date: Sun, 10 May 2015 15:49:38 -0400 Message-ID: <1431287385-1526-1-git-send-email-paul.gortmaker@windriver.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Sender: linux-tegra-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Cc: Paul Gortmaker , Alexandre Courbot , Arnd Bergmann , Axel Lin , Daniel Lezcano , David Woodhouse , Dmitry Eremin-Solenikov , Greg Kroah-Hartman , Kukjin Kim , Linus Walleij , Michal Simek , "Rafael J. Wysocki" , Sebastian Reichel , Stephen Warren , Thierry Reding , Viresh Kumar , linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, linux-pm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org List-Id: linux-pm@vger.kernel.org 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 during a pending header cleanup. So we convert them here vs. adding an include of 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 Cc: Arnd Bergmann Cc: Axel Lin Cc: Daniel Lezcano Cc: David Woodhouse Cc: Dmitry Eremin-Solenikov Cc: Greg Kroah-Hartman Cc: Kukjin Kim Cc: Linus Walleij Cc: Michal Simek Cc: "Rafael J. Wysocki" Cc: Sebastian Reichel Cc: Stephen Warren Cc: Thierry Reding Cc: Viresh Kumar Cc: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org Cc: linux-pm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org