OSDN Git Service

eeprom: at24: correctly set the size for at24mac402
authorBartosz Golaszewski <brgl@bgdev.pl>
Mon, 27 Nov 2017 21:06:13 +0000 (22:06 +0100)
committerBartosz Golaszewski <brgl@bgdev.pl>
Wed, 29 Nov 2017 14:22:24 +0000 (15:22 +0100)
commit5478e478eee3b096b8d998d4ed445da30da2dfbc
treee1652fdf308cef6a7cedc152dc519897a822b88a
parent4fbd8d194f06c8a3fd2af1ce560ddb31f7ec8323
eeprom: at24: correctly set the size for at24mac402

There's an ilog2() expansion in AT24_DEVICE_MAGIC() which rounds down
the actual size of EUI-48 byte array in at24mac402 eeproms to 4 from 6,
making it impossible to read it all.

Fix it by manually adjusting the value in probe().

This patch contains a temporary fix that is suitable for stable
branches. Eventually we'll probably remove the call to ilog2() while
converting the magic values to actual structs.

Cc: stable@vger.kernel.org
Fixes: 0b813658c115 ("eeprom: at24: add support for at24mac series")
Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
drivers/misc/eeprom/at24.c