Messages in this thread | | | Date | Wed, 15 Jul 2020 08:54:42 +0530 | From | Viresh Kumar <> | Subject | Re: [PATCH 09/13] cpufreq: acpi-cpufreq: Remove unused ID structs |
| |
On 14-07-20, 22:03, Lee Jones wrote: > On Tue, 14 Jul 2020, Rafael J. Wysocki wrote: > > > On Tue, Jul 14, 2020 at 4:51 PM Lee Jones <lee.jones@linaro.org> wrote: > > > > > > Can't see them being used anywhere and the compiler doesn't complain > > > that they're missing, so ... > > > > Aren't they needed for automatic module loading in certain configurations? > > Any idea how that works, or where the code is for that?
The MODULE_DEVICE_TABLE() thingy creates a map of vendor-id, product-id that the kernel keeps after boot (and so there is no static reference of it for the compiler), later when a device is hotplugged into the kernel it refers to the map to find the related driver for it and loads it if it isn't already loaded.
This has some of it, search for MODULE_DEVICE_TABLE() in it. Documentation/driver-api/usb/hotplug.rst
-- viresh
| |