Message ID | 20240819113855.787149-1-liuyuntao12@huawei.com (mailing list archive) |
---|---|
Headers | show |
Series | drivers: fix some module autoloading | expand |
On Mon, Aug 19, 2024, at 13:38, Yuntao Liu wrote: > Add MODULE_DEVICE_TABLE(), so modules could be properly autoloaded > based on the alias from platform_device_id table. > > Yuntao Liu (9): > usb: ehci-mv: fix module autoloading > soc: pxa: ssp: fix module autoloading > misc: atmel-ssc: fix module autoloading > i2c: at91: fix module autoloading > mpc85xx_edac: fix module autoloading > dmaengine: pxa: fix module autoloading > dmaengine: mmp_pdma: fix module autoloading > dmaengine: at_hdmac: fix module autoloading > ipmi: ipmi_ssif: fix module autoloading I looked at all the patches and found that most of them do not use the table any more, or will stop using it in the near future. I think your work to validate the correctness of the entries is useful, but it may be more helpful to focus on removing all the unused tables, including those that have a MODULE_DEVICE_TABLE() tag. If you are planning to do more such cleanups, maybe you can go through them one subsystem at a time and look for drivers that have both of_device_id and i2c_device_id/platform_device_id/ spi_device_id tables. If nothing in the kernel creates a device with the legacy string, you can then send a patch that removes the old device ID list and at the same time makes the DT support unconditional in case there is an #ifdef CONFIG_OF check. If the probe() function accesses platform_data, this would also be unused, allowing an even nicer cleanup of removing the platofrm_data path in favor of OF properties. Arnd
yes sir^^. Regards! Yuntao On 2024/8/19 20:09, Arnd Bergmann wrote: > On Mon, Aug 19, 2024, at 13:38, Yuntao Liu wrote: >> Add MODULE_DEVICE_TABLE(), so modules could be properly autoloaded >> based on the alias from platform_device_id table. >> >> Yuntao Liu (9): >> usb: ehci-mv: fix module autoloading >> soc: pxa: ssp: fix module autoloading >> misc: atmel-ssc: fix module autoloading >> i2c: at91: fix module autoloading >> mpc85xx_edac: fix module autoloading >> dmaengine: pxa: fix module autoloading >> dmaengine: mmp_pdma: fix module autoloading >> dmaengine: at_hdmac: fix module autoloading >> ipmi: ipmi_ssif: fix module autoloading > > I looked at all the patches and found that most of them do not > use the table any more, or will stop using it in the near future. > > I think your work to validate the correctness of the entries > is useful, but it may be more helpful to focus on removing > all the unused tables, including those that have a > MODULE_DEVICE_TABLE() tag. > > If you are planning to do more such cleanups, maybe you can > go through them one subsystem at a time and look for drivers > that have both of_device_id and i2c_device_id/platform_device_id/ > spi_device_id tables. If nothing in the kernel creates a device > with the legacy string, you can then send a patch that removes > the old device ID list and at the same time makes the DT support > unconditional in case there is an #ifdef CONFIG_OF check. > > If the probe() function accesses platform_data, this would also > be unused, allowing an even nicer cleanup of removing the > platofrm_data path in favor of OF properties. > > Arnd