eeprom: at24: Add 24c2048
Subsystems (2)
PATCH v3 1/1 eeprom: at24: Add 24c2048
Works with an ST M24M02.
Signed-off-by Adrian Bunk <[email protected]>
--- Documentation/devicetree/bindings/eeprom/at24.txt | 1 + drivers/misc/eeprom/Kconfig | 2 +- drivers/misc/eeprom/at24.c | 3 +++ 3 files changed, 5 insertions(+), 1 deletion(-)
Documentation/devicetree/bindings/eeprom/at24.txt +1 -0
@@ -27,6 +27,7 @@ Required properties: "atmel,24c256", "atmel,24c512", "atmel,24c1024", + "atmel,24c2048", If <manufacturer> is not "atmel", then a fallback must be used with the same <model> and "atmel" as manufacturer.
drivers/misc/eeprom/Kconfig +1 -1
@@ -13,7 +13,7 @@ config EEPROM_AT24 ones like at24c64, 24lc02 or fm24c04: 24c00, 24c01, 24c02, spd (readonly 24c02), 24c04, 24c08, - 24c16, 24c32, 24c64, 24c128, 24c256, 24c512, 24c1024 + 24c16, 24c32, 24c64, 24c128, 24c256, 24c512, 24c1024, 24c2048 Unless you like data loss puzzles, always be sure that any chip you configure as a 24c32 (32 kbit) or larger is NOT really a
drivers/misc/eeprom/at24.c +3 -0
@@ -173,6 +173,7 @@ AT24_CHIP_DATA(at24_data_24c128, 131072 / 8, AT24_FLAG_ADDR16);AT24_CHIP_DATA (at24_data_24c256,262144 /8 ,AT24_FLAG_ADDR16 );AT24_CHIP_DATA (at24_data_24c512,524288 /8 ,AT24_FLAG_ADDR16 );AT24_CHIP_DATA (at24_data_24c1024,1048576 /8 ,AT24_FLAG_ADDR16 ); +AT24_CHIP_DATA (at24_data_24c2048,2097152 /8 ,AT24_FLAG_ADDR16 );/* identical to 24c08 ? */ AT24_CHIP_DATA (at24_data_INT3499,8192 /8 ,0 );
@@ -199,6 +200,7 @@ static const struct i2c_device_id at24_ids[] = { { "24c256", (kernel_ulong_t)&at24_data_24c256 }, { "24c512", (kernel_ulong_t)&at24_data_24c512 }, { "24c1024", (kernel_ulong_t)&at24_data_24c1024 }, + { "24c2048", (kernel_ulong_t)&at24_data_24c2048 }, { "at24", 0 }, { /* END OF LIST */ } };
@@ -227,6 +229,7 @@ static const struct of_device_id at24_of_match[] = { { .compatible = "atmel,24c256", .data = &at24_data_24c256 }, { .compatible = "atmel,24c512", .data = &at24_data_24c512 }, { .compatible = "atmel,24c1024", .data = &at24_data_24c1024 }, + { .compatible = "atmel,24c2048", .data = &at24_data_24c2048 }, { /* END OF LIST */ }, };MODULE_DEVICE_TABLE (of, at24_of_match);
Signature · 1 line
2.11.0
śr., 31 paź 2018 o 21:49 Adrian Bunk <[email protected]> napisał(a):
Quoted 64 lines
Works with an ST M24M02.
Signed-off-by Adrian Bunk <[email protected]>--- Documentation/devicetree/bindings/eeprom/at24.txt | 1 + drivers/misc/eeprom/Kconfig | 2 +- drivers/misc/eeprom/at24.c | 3 +++ 3 files changed, 5 insertions(+), 1 deletion(-)Documentation/devicetree/bindings/eeprom/at24.txt +1
-0@@ -27,6 +27,7 @@ Required properties: "atmel,24c256", "atmel,24c512", "atmel,24c1024", + "atmel,24c2048", If <manufacturer> is not "atmel", then a fallback must be used with the same <model> and "atmel" as manufacturer.drivers/misc/eeprom/Kconfig +1
-1@@ -13,7 +13,7 @@ config EEPROM_AT24 ones like at24c64, 24lc02 or fm24c04: 24c00, 24c01, 24c02, spd (readonly 24c02), 24c04, 24c08, - 24c16, 24c32, 24c64, 24c128, 24c256, 24c512, 24c1024 + 24c16, 24c32, 24c64, 24c128, 24c256, 24c512, 24c1024, 24c2048 Unless you like data loss puzzles, always be sure that any chip you configure as a 24c32 (32 kbit) or larger is NOT really adrivers/misc/eeprom/at24.c +3
-1@@ -173,6 +173,7 @@ AT24_CHIP_DATA(at24_data_24c128, 131072 / 8, AT24_FLAG_ADDR16);AT24_CHIP_DATA (at24_data_24c256,262144 /8 ,AT24_FLAG_ADDR16 );AT24_CHIP_DATA (at24_data_24c512,524288 /8 ,AT24_FLAG_ADDR16 );AT24_CHIP_DATA (at24_data_24c1024,1048576 /8 ,AT24_FLAG_ADDR16 ); +AT24_CHIP_DATA (at24_data_24c2048,2097152 /8 ,AT24_FLAG_ADDR16 );/* identical to 24c08 ? */ AT24_CHIP_DATA (at24_data_INT3499,8192 /8 ,0 );@@ -199,6 +200,7 @@ static const struct i2c_device_id at24_ids[] = { { "24c256", (kernel_ulong_t)&at24_data_24c256 }, { "24c512", (kernel_ulong_t)&at24_data_24c512 }, { "24c1024", (kernel_ulong_t)&at24_data_24c1024 }, + { "24c2048", (kernel_ulong_t)&at24_data_24c2048 }, { "at24", 0 }, { /* END OF LIST */ } };@@ -227,6 +229,7 @@ static const struct of_device_id at24_of_match[] = { { .compatible = "atmel,24c256", .data = &at24_data_24c256 }, { .compatible = "atmel,24c512", .data = &at24_data_24c512 }, { .compatible = "atmel,24c1024", .data = &at24_data_24c1024 }, + { .compatible = "atmel,24c2048", .data = &at24_data_24c2048 }, { /* END OF LIST */ }, };MODULE_DEVICE_TABLE (of, at24_of_match); --
Quoted 2 lines
2.11.0
This patch doesn't even apply to current master, but first off: send the DT and code changes as separate patches.
Bart