Browse Source

Add i2c 24LC64 eeprom (#11200)

* add 24LC64 eeprom

* docs update

* Update docs/eeprom_driver.md

Co-authored-by: Joel Challis <git@zvecr.com>

Co-authored-by: Joel Challis <git@zvecr.com>
Xelus22 4 years ago
parent
commit
70f40339c2
3 changed files with 7 additions and 4 deletions
  1. 1 0
      docs/eeprom_driver.md
  2. 5 0
      drivers/eeprom/eeprom_i2c.h
  3. 1 4
      keyboards/xelus/valor_frl_tkl/config.h

+ 1 - 0
docs/eeprom_driver.md

@@ -40,6 +40,7 @@ Module           | Equivalent `#define`            | Source
 -----------------|---------------------------------|------------------------------------------
 CAT24C512 EEPROM | `#define EEPROM_I2C_CAT24C512`  | <https://www.sparkfun.com/products/14764>
 RM24C512C EEPROM | `#define EEPROM_I2C_RM24C512C`  | <https://www.sparkfun.com/products/14764>
+24LC64 EEPROM    | `#define EEPROM_I2C_24LC64`     | <https://www.microchip.com/wwwproducts/en/24LC64>
 24LC128 EEPROM   | `#define EEPROM_I2C_24LC128`    | <https://www.microchip.com/wwwproducts/en/24LC128>
 24LC256 EEPROM   | `#define EEPROM_I2C_24LC256`    | <https://www.sparkfun.com/products/525>
 MB85RC256V FRAM  | `#define EEPROM_I2C_MB85RC256V` | <https://www.adafruit.com/product/1895>

+ 5 - 0
drivers/eeprom/eeprom_i2c.h

@@ -49,6 +49,11 @@
 #    define EXTERNAL_EEPROM_PAGE_SIZE 64
 #    define EXTERNAL_EEPROM_ADDRESS_SIZE 2
 #    define EXTERNAL_EEPROM_WRITE_TIME 5
+#elif defined(EEPROM_I2C_24LC64)
+#    define EXTERNAL_EEPROM_BYTE_COUNT 8192
+#    define EXTERNAL_EEPROM_PAGE_SIZE 32
+#    define EXTERNAL_EEPROM_ADDRESS_SIZE 2
+#    define EXTERNAL_EEPROM_WRITE_TIME 5
 #elif defined(EEPROM_I2C_MB85RC256V)
 #    define EXTERNAL_EEPROM_BYTE_COUNT 32768
 #    define EXTERNAL_EEPROM_PAGE_SIZE 128

+ 1 - 4
keyboards/xelus/valor_frl_tkl/config.h

@@ -61,10 +61,7 @@
 
 // I2C EEPROM
 // 24LC64
-#define EXTERNAL_EEPROM_BYTE_COUNT      65535
-#define EXTERNAL_EEPROM_PAGE_SIZE       32
-#define EXTERNAL_EEPROM_ADDRESS_SIZE    2
-#define EXTERNAL_EEPROM_WRITE_TIME      5
+#define EEPROM_I2C_24LC64
 
 // Dynamic EEPROM
 // Something sensible or else VIA may crash