diff options
-rw-r--r-- | configs/uniphier_ld4_sld8_defconfig | 1 | ||||
-rw-r--r-- | configs/uniphier_pro4_defconfig | 1 | ||||
-rw-r--r-- | configs/uniphier_pxs2_ld6b_defconfig | 1 | ||||
-rw-r--r-- | configs/uniphier_v8_defconfig | 1 | ||||
-rw-r--r-- | drivers/misc/Kconfig | 45 | ||||
-rw-r--r-- | env/Kconfig | 30 | ||||
-rw-r--r-- | include/configs/uniphier.h | 2 |
7 files changed, 49 insertions, 32 deletions
diff --git a/configs/uniphier_ld4_sld8_defconfig b/configs/uniphier_ld4_sld8_defconfig index 53872f6..16fbe8a 100644 --- a/configs/uniphier_ld4_sld8_defconfig +++ b/configs/uniphier_ld4_sld8_defconfig @@ -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 diff --git a/configs/uniphier_pro4_defconfig b/configs/uniphier_pro4_defconfig index baec769..7348675 100644 --- a/configs/uniphier_pro4_defconfig +++ b/configs/uniphier_pro4_defconfig @@ -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 diff --git a/configs/uniphier_pxs2_ld6b_defconfig b/configs/uniphier_pxs2_ld6b_defconfig index 4ab56d8..c242776 100644 --- a/configs/uniphier_pxs2_ld6b_defconfig +++ b/configs/uniphier_pxs2_ld6b_defconfig @@ -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 diff --git a/configs/uniphier_v8_defconfig b/configs/uniphier_v8_defconfig index f4e1835..f4f2ca0 100644 --- a/configs/uniphier_v8_defconfig +++ b/configs/uniphier_v8_defconfig @@ -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 diff --git a/drivers/misc/Kconfig b/drivers/misc/Kconfig index d1ddbbe..3d282d5 100644 --- a/drivers/misc/Kconfig +++ b/drivers/misc/Kconfig @@ -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 diff --git a/env/Kconfig b/env/Kconfig index 20321f8..f12ef28 100644 --- a/env/Kconfig +++ b/env/Kconfig @@ -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. diff --git a/include/configs/uniphier.h b/include/configs/uniphier.h index 884e59c..bfce4e5 100644 --- a/include/configs/uniphier.h +++ b/include/configs/uniphier.h @@ -13,8 +13,6 @@ #define CONFIG_ARMV7_PSCI_1_0 -#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 10 - /*----------------------------------------------------------------------- * MMU and Cache Setting *----------------------------------------------------------------------*/ |