Kconfig: Add EEPROM options to Kconfig when I2C_EEPROM is set
authorAdam Ford <aford173@gmail.com>
Sun, 13 Aug 2017 14:00:28 +0000 (09:00 -0500)
committerTom Rini <trini@konsulko.com>
Sat, 2 Sep 2017 19:50:30 +0000 (15:50 -0400)
Add the following options to drivers/misc/Kconfig:
SYS_I2C_EEPROM_ADDR
SYS_I2C_EEPROM_BUS
SYS_EEPROM_SIZE
SYS_EEPROM_PAGE_WRITE_BITS
SYS_EEPROM_PAGE_WRITE_DELAY_MS
SYS_I2C_EEPROM_ADDR_LEN
SYS_I2C_EEPROM_ADDR_OVERFLOW

This does not migrate any boards, but provides a foundations for
those who want/need these options

Signed-off-by: Adam Ford <aford173@gmail.com>
[trini: Migrate uniphier]
Signed-off-by: Tom Rini <trini@konsulko.com>
configs/uniphier_ld4_sld8_defconfig
configs/uniphier_pro4_defconfig
configs/uniphier_pxs2_ld6b_defconfig
configs/uniphier_v8_defconfig
drivers/misc/Kconfig
env/Kconfig
include/configs/uniphier.h

index 53872f6fa3e3558c90b5e884b98627e114ba28d4..16fbe8adc581560f172fa771e649baeb3678b744 100644 (file)
@@ -35,6 +35,7 @@ CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_GPIO_UNIPHIER=y
 CONFIG_MISC=y
 CONFIG_I2C_EEPROM=y
+CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS=10
 CONFIG_MMC_UNIPHIER=y
 CONFIG_NAND=y
 CONFIG_NAND_DENALI=y
index baec769c54400f7b6d4759b084289a8b2f5c352c..7348675f80db858dc02d646d0cd52d6758326dc9 100644 (file)
@@ -34,6 +34,7 @@ CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_GPIO_UNIPHIER=y
 CONFIG_MISC=y
 CONFIG_I2C_EEPROM=y
+CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS=10
 CONFIG_MMC_UNIPHIER=y
 CONFIG_NAND=y
 CONFIG_NAND_DENALI=y
index 4ab56d804fedce64521de7a58491aa7746f9a313..c242776d9c671a5ff8ed37fb5914b702618fb521 100644 (file)
@@ -35,6 +35,7 @@ CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_GPIO_UNIPHIER=y
 CONFIG_MISC=y
 CONFIG_I2C_EEPROM=y
+CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS=10
 CONFIG_MMC_UNIPHIER=y
 CONFIG_NAND=y
 CONFIG_NAND_DENALI=y
index f4e183574580fd4331d29e0262faf2b7613e4013..f4f2ca062980ad0b89fb4caa71493606e42aeb61 100644 (file)
@@ -28,6 +28,7 @@ CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_GPIO_UNIPHIER=y
 CONFIG_MISC=y
 CONFIG_I2C_EEPROM=y
+CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS=10
 CONFIG_MMC_UNIPHIER=y
 CONFIG_MMC_SDHCI=y
 CONFIG_MMC_SDHCI_CADENCE=y
index d1ddbbe157cffc062575dd543cd5c4cb26e8d69c..3d282d5b14cfff7a43818a8fd4e633e28f1bb2b9 100644 (file)
@@ -196,4 +196,49 @@ config I2C_EEPROM
        depends on MISC
        help
          Enable a generic driver for EEPROMs attached via I2C.
+
+if I2C_EEPROM
+
+config SYS_I2C_EEPROM_ADDR
+       hex "Chip address of the EEPROM device"
+       default 0
+
+config SYS_I2C_EEPROM_BUS
+       int "I2C bus of the EEPROM device."
+       default 0
+
+config SYS_EEPROM_SIZE
+       int "Size in bytes of the EEPROM device"
+       default 256
+
+config SYS_EEPROM_PAGE_WRITE_BITS
+       int "Number of bits used to address bytes in a single page"
+       default 0
+       help
+         The EEPROM page size is 2^SYS_EEPROM_PAGE_WRITE_BITS.
+         A 64 byte page, for example would require six bits.
+
+config SYS_EEPROM_PAGE_WRITE_DELAY_MS
+       int "Number of milliseconds to delay between page writes"
+       default 0
+
+config SYS_I2C_EEPROM_ADDR_LEN
+       int "Length in bytes of the EEPROM memory array address"
+       default 1
+       help
+         Note: This is NOT the chip address length!
+
+config SYS_I2C_EEPROM_ADDR_OVERFLOW
+       hex "EEPROM Address Overflow"
+       default 0
+       help
+         EEPROM chips that implement "address overflow" are ones
+         like Catalyst 24WC04/08/16 which has 9/10/11 bits of
+         address and the extra bits end up in the "chip address" bit
+         slots. This makes a 24WC08 (1Kbyte) chip look like four 256
+         byte chips.
+
+endif
+
+
 endmenu
index 20321f862e182b20c6b3bfbda19e13da25cf6182..f12ef286345855eb604109df7cc70b4d95c48673 100644 (file)
@@ -68,40 +68,10 @@ config ENV_IS_IN_EEPROM
          These two #defines specify the offset and size of the
          environment area within the total memory of your EEPROM.
 
-         - CONFIG_SYS_I2C_EEPROM_ADDR:
-         If defined, specified the chip address of the EEPROM device.
-         The default address is zero.
-
-         - CONFIG_SYS_I2C_EEPROM_BUS:
-         If defined, specified the i2c bus of the EEPROM device.
-
-         - CONFIG_SYS_EEPROM_PAGE_WRITE_BITS:
-         If defined, the number of bits used to address bytes in a
-         single page in the EEPROM device.  A 64 byte page, for example
-         would require six bits.
-
-         - CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS:
-         If defined, the number of milliseconds to delay between
-         page writes.  The default is zero milliseconds.
-
-         - CONFIG_SYS_I2C_EEPROM_ADDR_LEN:
-         The length in bytes of the EEPROM memory array address.  Note
-         that this is NOT the chip address length!
-
-         - CONFIG_SYS_I2C_EEPROM_ADDR_OVERFLOW:
-         EEPROM chips that implement "address overflow" are ones
-         like Catalyst 24WC04/08/16 which has 9/10/11 bits of
-         address and the extra bits end up in the "chip address" bit
-         slots. This makes a 24WC08 (1Kbyte) chip look like four 256
-         byte chips.
-
          Note that we consider the length of the address field to
          still be one byte because the extra address bits are hidden
          in the chip address.
 
-         - CONFIG_SYS_EEPROM_SIZE:
-         The size in bytes of the EEPROM device.
-
          - CONFIG_ENV_EEPROM_IS_ON_I2C
          define this, if you have I2C and SPI activated, and your
          EEPROM, which holds the environment, is on the I2C bus.
index 884e59c35e411b847e45ec95e95f5d04e5a5bbce..bfce4e5b1b87a9687a5df81c06cc5c10c1b20226 100644 (file)
@@ -13,8 +13,6 @@
 
 #define CONFIG_ARMV7_PSCI_1_0
 
-#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS  10
-
 /*-----------------------------------------------------------------------
  * MMU and Cache Setting
  *----------------------------------------------------------------------*/