Re: [PATCH -next] misc: eeprom: Add missing MODULE_DEVICE_TABLE

From: Jean Delvare
Date: Wed May 12 2021 - 08:38:36 EST


Hi Zou,

On Wed, 12 May 2021 14:41:48 +0800, Zou Wei wrote:
> This patch adds missing MODULE_DEVICE_TABLE definition which generates
> correct modalias for automatic loading of this driver when it is built
> as an external module.
>
> Reported-by: Hulk Robot <hulkci@xxxxxxxxxx>
> Signed-off-by: Zou Wei <zou_wei@xxxxxxxxxx>
> ---
> drivers/misc/eeprom/eeprom.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/misc/eeprom/eeprom.c b/drivers/misc/eeprom/eeprom.c
> index 34fa385..3fefb70 100644
> --- a/drivers/misc/eeprom/eeprom.c
> +++ b/drivers/misc/eeprom/eeprom.c
> @@ -194,6 +194,7 @@ static const struct i2c_device_id eeprom_id[] = {
> { "eeprom", 0 },
> { }
> };
> +MODULE_DEVICE_TABLE(i2c, eeprom_id);
>
> static struct i2c_driver eeprom_driver = {
> .driver = {

Nack. The "eeprom" driver is a legacy driver that is being phased out and
replaced by the "at24" driver. We do NOT want the "eeprom" driver to be
loaded automatically, because it would then potentially steal the
devices which the "at24" driver should be dealing with.

Plus, the only driver which should instantiate "eeprom" i2c devices
is the "eeprom" driver itself. So I can't see how adding a
MODULE_DEVICE_TABLE() would change anything in practice anyway. If it
does change something for you then you are using the "eeprom" driver
when you shouldn't. Please move to the "at24" driver.

--
Jean Delvare
SUSE L3 Support