lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <55BF75A2.90200@osg.samsung.com>
Date:	Mon, 3 Aug 2015 16:07:30 +0200
From:	Javier Martinez Canillas <javier@....samsung.com>
To:	Jean Delvare <jdelvare@...e.de>
Cc:	linux-kernel@...r.kernel.org
Subject: Re: [PATCH 06/27] misc: eeprom: Export I2C module alias information
 in missing drivers

Hello Jean,

On 08/03/2015 01:05 PM, Jean Delvare wrote:
> Hi Javier,
> 
> On Thu, 30 Jul 2015 18:18:31 +0200, Javier Martinez Canillas wrote:
>> The I2C core always reports the MODALIAS uevent as "i2c:<client name"
>> regardless if the driver was matched using the I2C id_table or the
>> of_match_table. So the driver needs to export the I2C table and this
>> be built into the module or udev won't have the necessary information
>> to auto load the correct module when the device is added.
>>
>> Signed-off-by: Javier Martinez Canillas <javier@....samsung.com>
>>
>> ---
>>
>>  drivers/misc/eeprom/eeprom.c  | 1 +
>>  drivers/misc/eeprom/max6875.c | 1 +
>>  2 files changed, 2 insertions(+)
>>
>> diff --git a/drivers/misc/eeprom/eeprom.c b/drivers/misc/eeprom/eeprom.c
>> index b432873def96..4bb54e1c40a7 100644
>> --- a/drivers/misc/eeprom/eeprom.c
>> +++ b/drivers/misc/eeprom/eeprom.c
>> @@ -203,6 +203,7 @@ static const struct i2c_device_id eeprom_id[] = {
>>  	{ "eeprom", 0 },
>>  	{ }
>>  };
>> +MODULE_DEVICE_TABLE(i2c, eeprom_id);
>>  
>>  static struct i2c_driver eeprom_driver = {
>>  	.driver = {
> 
> I seem to recall this one is missing on purpose. The legacy eeprom
> driver is deprecated in favor of the at24 driver, so no one should
> declare "eeprom" i2c devices and thus the module alias is useless. So I
> would leave the legacy eeprom driver alone.
>
> The only feature the at24 driver is missing is device auto-detection as
> far as I know. Maybe it should be added to ease the transition. Or
> maybe not, I admit I'm not sure.
>

It's up to you but since the driver is still in mainline and it has an
i2c_device_id table, an "eeprom" I2C device can be registered and matched
by the I2C core but if built as a module, it won't be autoloaded.

I'm not familiar with the at24 platform so feel free to discard the patch
if you think that it is not needed and no one is really using this driver
(although in that case I think we the driver should just be removed).

>> diff --git a/drivers/misc/eeprom/max6875.c b/drivers/misc/eeprom/max6875.c
>> index 580ff9df5529..c74920cc3d18 100644
>> --- a/drivers/misc/eeprom/max6875.c
>> +++ b/drivers/misc/eeprom/max6875.c
>> @@ -197,6 +197,7 @@ static const struct i2c_device_id max6875_id[] = {
>>  	{ "max6875", 0 },
>>  	{ }
>>  };
>> +MODULE_DEVICE_TABLE(i2c, max6875_id);
>>  
>>  static struct i2c_driver max6875_driver = {
>>  	.driver = {
> 
> That one is needed, I agree.
> 
> Reviewed-by: Jean Delvare <jdelvare@...e.de>
> 

Best regards,
-- 
Javier Martinez Canillas
Open Source Group
Samsung Research America
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ