From 88ecbc2682e121aecc738aa4f1aa5ce691dbb80b Mon Sep 17 00:00:00 2001 From: raiden00pl Date: Tue, 14 Jul 2026 20:00:42 +0200 Subject: [PATCH] drivers/eeprom: add 24CW160 support Add support for the Microchip 24CW160 (2048B, 32-byte pages, 2-byte data address) Signed-off-by: raiden00pl Assisted-by: Claude Code --- drivers/eeprom/i2c_xx24xx.c | 8 ++++++++ include/nuttx/eeprom/eeprom.h | 1 + 2 files changed, 9 insertions(+) diff --git a/drivers/eeprom/i2c_xx24xx.c b/drivers/eeprom/i2c_xx24xx.c index 3cd97cc4cfd..7ed44d1b558 100644 --- a/drivers/eeprom/i2c_xx24xx.c +++ b/drivers/eeprom/i2c_xx24xx.c @@ -41,6 +41,11 @@ * 24xx1025 131072 128 2 1010PAA Special case: address * bit is shifted. * 24xx1026 131072 128 2 1010AAP + * 24CM02 262144 256 2 1010APP + * 24CW160 2048 32 2 1010AAA Not a 24xx16 + * variant: 24CW uses + * 2-byte addressing + * and 32-byte pages. * * Atmel * AT24C01 128 8 1 1010AAA @@ -214,6 +219,9 @@ static const struct ee24xx_geom_s g_ee24xx_devices[] = { 11, 5, 2, 2, 0 }, /* AT24CM02 262144 256 2 */ + { + 4, 2, 2, 0, 0 + }, /* 24CW160 2048 32 2 */ /* STM devices */ diff --git a/include/nuttx/eeprom/eeprom.h b/include/nuttx/eeprom/eeprom.h index 65b86e7fcdb..1d6446785d6 100644 --- a/include/nuttx/eeprom/eeprom.h +++ b/include/nuttx/eeprom/eeprom.h @@ -132,6 +132,7 @@ enum eeprom_24xx_e EEPROM_24XX1025, EEPROM_24XX1026, EEPROM_24CM02, + EEPROM_24CW160, /* Atmel geometries - none... */