On Mon, Jun 17, 2019 at 08:40:38PM +0200, Enrico Weigelt, metux IT consult wrote: > +/* subsys_spi_driver() - Helper macro for drivers that don't do > + * anything special in module init/exit. This eliminates a lot of > + * boilerplate. Each module may only use this macro once, and > + * calling it replaces subsys_initcall() and module_exit() > + */ > +#define subsys_spi_driver(__spi_driver) \ I'm not convinced we want to be encouraging anyone to be using subsys_initcall() for SPI drivers in the first place - my guess would be that with deferred probing none of that is needed anyway and the driver could just use module_spi_driver(). Certainly if the drivers do actually need subsys_initcall() I'd like to understand why before going forward with something like this, and ideally we'd be able to remove the need.