From 6115f1c4fe81015369e110ea9830a6e36710677c Mon Sep 17 00:00:00 2001 From: Tom Rini Date: Wed, 22 Sep 2021 14:50:39 -0400 Subject: [PATCH] Convert CONFIG_NAND_OMAP_ECCSCHEME to Kconfig The values of CONFIG_NAND_OMAP_ECCSCHEME map to the enum in include/linux/mtd/omap_gpmc.h for valid ECC schemes. Make which one we will use be a choice statement, enumerating the ones which we have implemented. Signed-off-by: Tom Rini --- configs/am335x_guardian_defconfig | 1 + configs/am3517_evm_defconfig | 1 + configs/am43xx_evm_defconfig | 1 + configs/am43xx_evm_rtconly_defconfig | 1 + configs/am43xx_evm_usbhost_boot_defconfig | 1 + configs/am43xx_hs_evm_defconfig | 1 + configs/devkit8000_defconfig | 1 + configs/etamin_defconfig | 1 + configs/igep00x0_defconfig | 1 + configs/omap35_logic_defconfig | 1 + configs/omap35_logic_somlv_defconfig | 1 + configs/omap3_beagle_defconfig | 1 + configs/omap3_evm_defconfig | 1 + configs/omap3_logic_defconfig | 1 + configs/omap3_logic_somlv_defconfig | 1 + doc/README.nand | 66 -------------- drivers/mtd/nand/raw/Kconfig | 103 +++++++++++++++++++++- include/configs/am335x_evm.h | 1 - include/configs/am335x_guardian.h | 1 - include/configs/am335x_igep003x.h | 1 - include/configs/am3517_evm.h | 1 - include/configs/am43xx_evm.h | 1 - include/configs/baltos.h | 1 - include/configs/brppt1.h | 1 - include/configs/chiliboard.h | 1 - include/configs/cm_t43.h | 1 - include/configs/devkit8000.h | 1 - include/configs/dra7xx_evm.h | 1 - include/configs/etamin.h | 2 - include/configs/omap3_beagle.h | 1 - include/configs/omap3_evm.h | 1 - include/configs/omap3_igep00x0.h | 1 - include/configs/omap3_logic.h | 1 - include/configs/phycore_am335x_r2.h | 1 - include/configs/siemens-am33x-common.h | 1 - include/configs/tam3517-common.h | 1 - include/configs/ti816x_evm.h | 1 - 37 files changed, 116 insertions(+), 89 deletions(-) diff --git a/configs/am335x_guardian_defconfig b/configs/am335x_guardian_defconfig index 272d5b8775..ea4032fe1f 100644 --- a/configs/am335x_guardian_defconfig +++ b/configs/am335x_guardian_defconfig @@ -88,6 +88,7 @@ CONFIG_MISC=y CONFIG_MTD=y CONFIG_DM_MTD=y CONFIG_MTD_RAW_NAND=y +CONFIG_NAND_OMAP_ECCSCHEME_BCH16_CODE_HW=y CONFIG_SYS_NAND_BLOCK_SIZE=0x40000 CONFIG_SYS_NAND_ONFI_DETECTION=y CONFIG_SYS_NAND_PAGE_COUNT=0x40 diff --git a/configs/am3517_evm_defconfig b/configs/am3517_evm_defconfig index fa3c22995c..1bdebf5b7f 100644 --- a/configs/am3517_evm_defconfig +++ b/configs/am3517_evm_defconfig @@ -57,6 +57,7 @@ CONFIG_DM_PCA953X=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y +CONFIG_NAND_OMAP_ECCSCHEME_BCH8_CODE_HW_DETECTION_SW=y CONFIG_SYS_NAND_BLOCK_SIZE=0x20000 CONFIG_SYS_NAND_PAGE_COUNT=0x40 CONFIG_SYS_NAND_PAGE_SIZE=0x800 diff --git a/configs/am43xx_evm_defconfig b/configs/am43xx_evm_defconfig index 98cd6b4dcd..108db834c4 100644 --- a/configs/am43xx_evm_defconfig +++ b/configs/am43xx_evm_defconfig @@ -60,6 +60,7 @@ CONFIG_SYS_I2C_EEPROM_ADDR=0x50 CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y +CONFIG_NAND_OMAP_ECCSCHEME_BCH16_CODE_HW=y CONFIG_SYS_NAND_BLOCK_SIZE=0x40000 CONFIG_SYS_NAND_ONFI_DETECTION=y CONFIG_SYS_NAND_PAGE_COUNT=0x40 diff --git a/configs/am43xx_evm_rtconly_defconfig b/configs/am43xx_evm_rtconly_defconfig index 2ec0762ccf..f558fd503a 100644 --- a/configs/am43xx_evm_rtconly_defconfig +++ b/configs/am43xx_evm_rtconly_defconfig @@ -47,6 +47,7 @@ CONFIG_SYS_I2C_EEPROM_ADDR=0x50 CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y +CONFIG_NAND_OMAP_ECCSCHEME_BCH16_CODE_HW=y CONFIG_SYS_NAND_BLOCK_SIZE=0x40000 CONFIG_SYS_NAND_ONFI_DETECTION=y CONFIG_SYS_NAND_PAGE_COUNT=0x40 diff --git a/configs/am43xx_evm_usbhost_boot_defconfig b/configs/am43xx_evm_usbhost_boot_defconfig index c08e0b6bab..0b91f3a5f0 100644 --- a/configs/am43xx_evm_usbhost_boot_defconfig +++ b/configs/am43xx_evm_usbhost_boot_defconfig @@ -63,6 +63,7 @@ CONFIG_MISC=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y +CONFIG_NAND_OMAP_ECCSCHEME_BCH16_CODE_HW=y CONFIG_SYS_NAND_BLOCK_SIZE=0x40000 CONFIG_SYS_NAND_ONFI_DETECTION=y CONFIG_SYS_NAND_PAGE_COUNT=0x40 diff --git a/configs/am43xx_hs_evm_defconfig b/configs/am43xx_hs_evm_defconfig index 26c1b594de..efa6cd0465 100644 --- a/configs/am43xx_hs_evm_defconfig +++ b/configs/am43xx_hs_evm_defconfig @@ -65,6 +65,7 @@ CONFIG_SYS_I2C_EEPROM_ADDR=0x50 CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y +CONFIG_NAND_OMAP_ECCSCHEME_BCH16_CODE_HW=y CONFIG_SYS_NAND_BLOCK_SIZE=0x40000 CONFIG_SYS_NAND_ONFI_DETECTION=y CONFIG_SYS_NAND_PAGE_COUNT=0x40 diff --git a/configs/devkit8000_defconfig b/configs/devkit8000_defconfig index 1c067fd7df..ccdd4f606f 100644 --- a/configs/devkit8000_defconfig +++ b/configs/devkit8000_defconfig @@ -41,6 +41,7 @@ CONFIG_TWL4030_LED=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y +CONFIG_NAND_OMAP_ECCSCHEME_HAM1_CODE_HW=y CONFIG_SYS_NAND_BLOCK_SIZE=0x20000 CONFIG_SYS_NAND_PAGE_COUNT=0x40 CONFIG_SYS_NAND_PAGE_SIZE=0x800 diff --git a/configs/etamin_defconfig b/configs/etamin_defconfig index 65bdcf6bf7..59a919bece 100644 --- a/configs/etamin_defconfig +++ b/configs/etamin_defconfig @@ -85,6 +85,7 @@ CONFIG_SPL_SYS_I2C_LEGACY=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y +CONFIG_NAND_OMAP_ECCSCHEME_BCH16_CODE_HW=y CONFIG_SYS_NAND_BLOCK_SIZE=0x80000 CONFIG_SYS_NAND_ONFI_DETECTION=y CONFIG_SYS_NAND_PAGE_COUNT=0x80 diff --git a/configs/igep00x0_defconfig b/configs/igep00x0_defconfig index 17e793c313..8f6e13e2a8 100644 --- a/configs/igep00x0_defconfig +++ b/configs/igep00x0_defconfig @@ -60,6 +60,7 @@ CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y CONFIG_SYS_MTDPARTS_RUNTIME=y CONFIG_MTD_RAW_NAND=y +CONFIG_NAND_OMAP_ECCSCHEME_BCH8_CODE_HW_DETECTION_SW=y CONFIG_SYS_NAND_BLOCK_SIZE=0x20000 CONFIG_SYS_NAND_PAGE_COUNT=0x40 CONFIG_SYS_NAND_PAGE_SIZE=0x800 diff --git a/configs/omap35_logic_defconfig b/configs/omap35_logic_defconfig index fe37a981e4..9d8ac94d2a 100644 --- a/configs/omap35_logic_defconfig +++ b/configs/omap35_logic_defconfig @@ -57,6 +57,7 @@ CONFIG_SYS_I2C_EEPROM_ADDR=0x50 CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y +CONFIG_NAND_OMAP_ECCSCHEME_BCH8_CODE_HW_DETECTION_SW=y CONFIG_SYS_NAND_BLOCK_SIZE=0x20000 CONFIG_SYS_NAND_PAGE_COUNT=0x40 CONFIG_SYS_NAND_PAGE_SIZE=0x800 diff --git a/configs/omap35_logic_somlv_defconfig b/configs/omap35_logic_somlv_defconfig index 29d10638a1..ee0c58ad2b 100644 --- a/configs/omap35_logic_somlv_defconfig +++ b/configs/omap35_logic_somlv_defconfig @@ -62,6 +62,7 @@ CONFIG_FLASH_CFI_MTD=y CONFIG_SYS_FLASH_PROTECTION=y CONFIG_SYS_FLASH_CFI=y CONFIG_MTD_RAW_NAND=y +CONFIG_NAND_OMAP_ECCSCHEME_BCH8_CODE_HW_DETECTION_SW=y CONFIG_SYS_NAND_BLOCK_SIZE=0x20000 CONFIG_SYS_NAND_PAGE_COUNT=0x40 CONFIG_SYS_NAND_PAGE_SIZE=0x800 diff --git a/configs/omap3_beagle_defconfig b/configs/omap3_beagle_defconfig index 46a792fe8a..80e2cc616c 100644 --- a/configs/omap3_beagle_defconfig +++ b/configs/omap3_beagle_defconfig @@ -74,6 +74,7 @@ CONFIG_TWL4030_LED=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y +CONFIG_NAND_OMAP_ECCSCHEME_HAM1_CODE_HW=y CONFIG_SYS_NAND_BLOCK_SIZE=0x20000 CONFIG_SYS_NAND_PAGE_COUNT=0x40 CONFIG_SYS_NAND_PAGE_SIZE=0x800 diff --git a/configs/omap3_evm_defconfig b/configs/omap3_evm_defconfig index 0174b3a669..b89ab392d0 100644 --- a/configs/omap3_evm_defconfig +++ b/configs/omap3_evm_defconfig @@ -62,6 +62,7 @@ CONFIG_SPL_SYS_I2C_LEGACY=y CONFIG_MMC_OMAP_HS=y CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y +CONFIG_NAND_OMAP_ECCSCHEME_BCH8_CODE_HW_DETECTION_SW=y CONFIG_SYS_NAND_BLOCK_SIZE=0x20000 CONFIG_SYS_NAND_PAGE_COUNT=0x40 CONFIG_SYS_NAND_PAGE_SIZE=0x800 diff --git a/configs/omap3_logic_defconfig b/configs/omap3_logic_defconfig index 18e87f125c..becf862dcb 100644 --- a/configs/omap3_logic_defconfig +++ b/configs/omap3_logic_defconfig @@ -57,6 +57,7 @@ CONFIG_MMC_OMAP_HS=y CONFIG_MMC_OMAP36XX_PINS=y CONFIG_MTD=y CONFIG_MTD_RAW_NAND=y +CONFIG_NAND_OMAP_ECCSCHEME_BCH8_CODE_HW_DETECTION_SW=y CONFIG_SYS_NAND_BLOCK_SIZE=0x20000 CONFIG_SYS_NAND_PAGE_COUNT=0x40 CONFIG_SYS_NAND_PAGE_SIZE=0x800 diff --git a/configs/omap3_logic_somlv_defconfig b/configs/omap3_logic_somlv_defconfig index f7470c1a40..ece92fef61 100644 --- a/configs/omap3_logic_somlv_defconfig +++ b/configs/omap3_logic_somlv_defconfig @@ -63,6 +63,7 @@ CONFIG_FLASH_CFI_MTD=y CONFIG_SYS_FLASH_PROTECTION=y CONFIG_SYS_FLASH_CFI=y CONFIG_MTD_RAW_NAND=y +CONFIG_NAND_OMAP_ECCSCHEME_BCH8_CODE_HW_DETECTION_SW=y CONFIG_SYS_NAND_BLOCK_SIZE=0x20000 CONFIG_SYS_NAND_PAGE_COUNT=0x40 CONFIG_SYS_NAND_PAGE_SIZE=0x800 diff --git a/doc/README.nand b/doc/README.nand index f6460dba60..ffcea90799 100644 --- a/doc/README.nand +++ b/doc/README.nand @@ -200,72 +200,6 @@ Platform specific options so those platforms should use CONFIG_SPL_NAND_SIMPLE for enabling SPL-NAND driver with software ECC correction support. - CONFIG_NAND_OMAP_ECCSCHEME - On OMAP platforms, this CONFIG specifies NAND ECC scheme. - It can take following values: - OMAP_ECC_HAM1_CODE_SW - 1-bit Hamming code using software lib. - (for legacy devices only) - OMAP_ECC_HAM1_CODE_HW - 1-bit Hamming code using GPMC hardware. - (for legacy devices only) - OMAP_ECC_BCH4_CODE_HW_DETECTION_SW - 4-bit BCH code (unsupported) - OMAP_ECC_BCH4_CODE_HW - 4-bit BCH code (unsupported) - OMAP_ECC_BCH8_CODE_HW_DETECTION_SW - 8-bit BCH code with - - ecc calculation using GPMC hardware engine, - - error detection using software library. - - requires CONFIG_BCH to enable software BCH library - (For legacy device which do not have ELM h/w engine) - OMAP_ECC_BCH8_CODE_HW - 8-bit BCH code with - - ecc calculation using GPMC hardware engine, - - error detection using ELM hardware engine. - OMAP_ECC_BCH16_CODE_HW - 16-bit BCH code with - - ecc calculation using GPMC hardware engine, - - error detection using ELM hardware engine. - - How to select ECC scheme on OMAP and AMxx platforms ? - ----------------------------------------------------- - Though higher ECC schemes have more capability to detect and correct - bit-flips, but still selection of ECC scheme is dependent on following - - hardware engines present in SoC. - Some legacy OMAP SoC do not have ELM h/w engine thus such - SoC cannot support BCHx_HW ECC schemes. - - size of OOB/Spare region - With higher ECC schemes, more OOB/Spare area is required to - store ECC. So choice of ECC scheme is limited by NAND oobsize. - - In general following expression can help: - NAND_OOBSIZE >= 2 + (NAND_PAGESIZE / 512) * ECC_BYTES - where - NAND_OOBSIZE = number of bytes available in - OOB/spare area per NAND page. - NAND_PAGESIZE = bytes in main-area of NAND page. - ECC_BYTES = number of ECC bytes generated to - protect 512 bytes of data, which is: - 3 for HAM1_xx ecc schemes - 7 for BCH4_xx ecc schemes - 14 for BCH8_xx ecc schemes - 26 for BCH16_xx ecc schemes - - example to check for BCH16 on 2K page NAND - NAND_PAGESIZE = 2048 - NAND_OOBSIZE = 64 - 2 + (2048 / 512) * 26 = 106 > NAND_OOBSIZE - Thus BCH16 cannot be supported on 2K page NAND. - - However, for 4K pagesize NAND - NAND_PAGESIZE = 4096 - NAND_OOBSIZE = 224 - ECC_BYTES = 26 - 2 + (4096 / 512) * 26 = 210 < NAND_OOBSIZE - Thus BCH16 can be supported on 4K page NAND. - - CONFIG_NAND_OMAP_GPMC_PREFETCH On OMAP platforms that use the GPMC controller (CONFIG_NAND_OMAP_GPMC_PREFETCH), this options enables the code that diff --git a/drivers/mtd/nand/raw/Kconfig b/drivers/mtd/nand/raw/Kconfig index 2e6fe14ab3..790ee34403 100644 --- a/drivers/mtd/nand/raw/Kconfig +++ b/drivers/mtd/nand/raw/Kconfig @@ -156,9 +156,10 @@ config NAND_OMAP_GPMC do ECC calculation (not ECC error detection) for HAM1, BCH4, BCH8 and BCH16 ECC algorithms. +if NAND_OMAP_GPMC + config NAND_OMAP_GPMC_PREFETCH bool "Enable GPMC Prefetch" - depends on NAND_OMAP_GPMC default y help On OMAP platforms that use the GPMC controller @@ -167,7 +168,7 @@ config NAND_OMAP_GPMC_PREFETCH config NAND_OMAP_ELM bool "Enable ELM driver for OMAPxx and AMxx platforms." - depends on NAND_OMAP_GPMC && !OMAP34XX + depends on !OMAP34XX help ELM controller is used for ECC error detection (not ECC calculation) of BCH4, BCH8 and BCH16 ECC algorithms. @@ -176,6 +177,104 @@ config NAND_OMAP_ELM detection. However ECC calculation on such plaforms would still be done by GPMC controller. +choice + prompt "ECC scheme" + default NAND_OMAP_ECCSCHEME_BCH8_CODE_HW + help + On OMAP platforms, this CONFIG specifies NAND ECC scheme. + It can take following values: + OMAP_ECC_HAM1_CODE_SW + 1-bit Hamming code using software lib. + (for legacy devices only) + OMAP_ECC_HAM1_CODE_HW + 1-bit Hamming code using GPMC hardware. + (for legacy devices only) + OMAP_ECC_BCH4_CODE_HW_DETECTION_SW + 4-bit BCH code (unsupported) + OMAP_ECC_BCH4_CODE_HW + 4-bit BCH code (unsupported) + OMAP_ECC_BCH8_CODE_HW_DETECTION_SW + 8-bit BCH code with + - ecc calculation using GPMC hardware engine, + - error detection using software library. + - requires CONFIG_BCH to enable software BCH library + (For legacy device which do not have ELM h/w engine) + OMAP_ECC_BCH8_CODE_HW + 8-bit BCH code with + - ecc calculation using GPMC hardware engine, + - error detection using ELM hardware engine. + OMAP_ECC_BCH16_CODE_HW + 16-bit BCH code with + - ecc calculation using GPMC hardware engine, + - error detection using ELM hardware engine. + + How to select ECC scheme on OMAP and AMxx platforms ? + ----------------------------------------------------- + Though higher ECC schemes have more capability to detect and correct + bit-flips, but still selection of ECC scheme is dependent on following + - hardware engines present in SoC. + Some legacy OMAP SoC do not have ELM h/w engine thus such + SoC cannot support BCHx_HW ECC schemes. + - size of OOB/Spare region + With higher ECC schemes, more OOB/Spare area is required to + store ECC. So choice of ECC scheme is limited by NAND oobsize. + + In general following expression can help: + NAND_OOBSIZE >= 2 + (NAND_PAGESIZE / 512) * ECC_BYTES + where + NAND_OOBSIZE = number of bytes available in + OOB/spare area per NAND page. + NAND_PAGESIZE = bytes in main-area of NAND page. + ECC_BYTES = number of ECC bytes generated to + protect 512 bytes of data, which is: + 3 for HAM1_xx ecc schemes + 7 for BCH4_xx ecc schemes + 14 for BCH8_xx ecc schemes + 26 for BCH16_xx ecc schemes + + example to check for BCH16 on 2K page NAND + NAND_PAGESIZE = 2048 + NAND_OOBSIZE = 64 + 2 + (2048 / 512) * 26 = 106 > NAND_OOBSIZE + Thus BCH16 cannot be supported on 2K page NAND. + + However, for 4K pagesize NAND + NAND_PAGESIZE = 4096 + NAND_OOBSIZE = 224 + ECC_BYTES = 26 + 2 + (4096 / 512) * 26 = 210 < NAND_OOBSIZE + Thus BCH16 can be supported on 4K page NAND. + +config NAND_OMAP_ECCSCHEME_HAM1_CODE_SW + bool "1-bit Hamming code using software lib" + +config NAND_OMAP_ECCSCHEME_HAM1_CODE_HW + bool "1-bit Hamming code using GPMC hardware" + +config NAND_OMAP_ECCSCHEME_BCH8_CODE_HW_DETECTION_SW + bool "8-bit BCH code with HW calculation SW error detection" + +config NAND_OMAP_ECCSCHEME_BCH8_CODE_HW + bool "8-bit BCH code with HW calculation and error detection" + +config NAND_OMAP_ECCSCHEME_BCH16_CODE_HW + bool "16-bit BCH code with HW calculation and error detection" + +endchoice + +config NAND_OMAP_ECCSCHEME + int + default 1 if NAND_OMAP_ECCSCHEME_HAM1_CODE_SW + default 2 if NAND_OMAP_ECCSCHEME_HAM1_CODE_HW + default 5 if NAND_OMAP_ECCSCHEME_BCH8_CODE_HW_DETECTION_SW + default 6 if NAND_OMAP_ECCSCHEME_BCH8_CODE_HW + default 7 if NAND_OMAP_ECCSCHEME_BCH16_CODE_HW + help + This must be kept in sync with the enum in + include/linux/mtd/omap_gpmc.h + +endif + config NAND_VF610_NFC bool "Support for Freescale NFC for VF610" select SYS_NAND_SELF_INIT diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h index dc8c3e2a5d..7fb1b3a3e3 100644 --- a/include/configs/am335x_evm.h +++ b/include/configs/am335x_evm.h @@ -191,7 +191,6 @@ #define CONFIG_SYS_NAND_ECCSIZE 512 #define CONFIG_SYS_NAND_ECCBYTES 14 -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW /* NAND: SPL related configs */ #ifdef CONFIG_SPL_OS_BOOT #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x00200000 /* kernel offset */ diff --git a/include/configs/am335x_guardian.h b/include/configs/am335x_guardian.h index fd7d589dd6..68b4e4f590 100644 --- a/include/configs/am335x_guardian.h +++ b/include/configs/am335x_guardian.h @@ -130,7 +130,6 @@ } #define CONFIG_SYS_NAND_ECCSIZE 512 #define CONFIG_SYS_NAND_ECCBYTES 26 -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH16_CODE_HW #define MTDIDS_DEFAULT "nand0=nand.0" #endif /* CONFIG_MTD_RAW_NAND */ diff --git a/include/configs/am335x_igep003x.h b/include/configs/am335x_igep003x.h index 4a303b702c..339a975c74 100644 --- a/include/configs/am335x_igep003x.h +++ b/include/configs/am335x_igep003x.h @@ -115,6 +115,5 @@ #define CONFIG_SYS_NAND_ECCSIZE 512 #define CONFIG_SYS_NAND_ECCBYTES 14 -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW #endif /* ! __CONFIG_IGEP003X_H */ diff --git a/include/configs/am3517_evm.h b/include/configs/am3517_evm.h index 3b70741953..bf01a777cc 100644 --- a/include/configs/am3517_evm.h +++ b/include/configs/am3517_evm.h @@ -28,7 +28,6 @@ #define CONFIG_SYS_NAND_ECCSIZE 512 #define CONFIG_SYS_NAND_ECCBYTES 13 -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW_DETECTION_SW #define CONFIG_SYS_NAND_MAX_OOBFREE 2 #define CONFIG_SYS_NAND_MAX_ECCPOS 56 #define CONFIG_SYS_NAND_U_BOOT_START CONFIG_SYS_TEXT_BASE diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h index 5b7418b9ff..7bea61ec15 100644 --- a/include/configs/am43xx_evm.h +++ b/include/configs/am43xx_evm.h @@ -158,7 +158,6 @@ #ifdef CONFIG_MTD_RAW_NAND /* NAND: device related configs */ /* NAND: driver related configs */ -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH16_CODE_HW #define CONFIG_SYS_NAND_ECCPOS { 2, 3, 4, 5, 6, 7, 8, 9, \ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, \ 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, \ diff --git a/include/configs/baltos.h b/include/configs/baltos.h index f55f57ce22..32f2174641 100644 --- a/include/configs/baltos.h +++ b/include/configs/baltos.h @@ -219,7 +219,6 @@ #define CONFIG_SYS_NAND_ECCSIZE 512 #define CONFIG_SYS_NAND_ECCBYTES 14 -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW #define CONFIG_SYS_NAND_U_BOOT_START CONFIG_SYS_TEXT_BASE #endif #endif diff --git a/include/configs/brppt1.h b/include/configs/brppt1.h index caedd3004b..4c56a8a59b 100644 --- a/include/configs/brppt1.h +++ b/include/configs/brppt1.h @@ -144,7 +144,6 @@ NANDTGTS \ #define CONFIG_SYS_MAX_NAND_DEVICE 1 #define CONFIG_SYS_NAND_BASE 0x8000000 /* don't change OMAP_ELM, ECCSCHEME. ROM code only supports this */ -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW #define CONFIG_SYS_NAND_ECCPOS {2, 3, 4, 5, 6, 7, 8, 9, \ 10, 11, 12, 13, 14, 15, 16, 17, \ 18, 19, 20, 21, 22, 23, 24, 25, \ diff --git a/include/configs/chiliboard.h b/include/configs/chiliboard.h index c7b2131c26..49a8d71031 100644 --- a/include/configs/chiliboard.h +++ b/include/configs/chiliboard.h @@ -134,7 +134,6 @@ #define CONFIG_SYS_NAND_ECCSIZE 512 #define CONFIG_SYS_NAND_ECCBYTES 14 -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW /* NAND: SPL related configs */ /* USB configuration */ diff --git a/include/configs/cm_t43.h b/include/configs/cm_t43.h index 49916c98a7..e250dc92dd 100644 --- a/include/configs/cm_t43.h +++ b/include/configs/cm_t43.h @@ -24,7 +24,6 @@ /* NAND support */ #define CONFIG_SYS_NAND_ECCSIZE 512 #define CONFIG_SYS_NAND_ECCBYTES 14 -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW #define CONFIG_SYS_NAND_ECCPOS { 2, 3, 4, 5, 6, 7, 8, 9, \ 10, 11, 12, 13, 14, 15, 16, 17, \ 18, 19, 20, 21, 22, 23, 24, 25, \ diff --git a/include/configs/devkit8000.h b/include/configs/devkit8000.h index 8113d759cf..591a33fca6 100644 --- a/include/configs/devkit8000.h +++ b/include/configs/devkit8000.h @@ -138,7 +138,6 @@ #define CONFIG_SYS_NAND_ECCSIZE 512 #define CONFIG_SYS_NAND_ECCBYTES 3 -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_HAM1_CODE_HW #define CONFIG_SYS_NAND_U_BOOT_SIZE 0x200000 diff --git a/include/configs/dra7xx_evm.h b/include/configs/dra7xx_evm.h index 11ef07ce64..c54f375689 100644 --- a/include/configs/dra7xx_evm.h +++ b/include/configs/dra7xx_evm.h @@ -81,7 +81,6 @@ #ifdef CONFIG_MTD_RAW_NAND /* NAND: device related configs */ /* NAND: driver related configs */ -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW #define CONFIG_SYS_NAND_ECCPOS { 2, 3, 4, 5, 6, 7, 8, 9, \ 10, 11, 12, 13, 14, 15, 16, 17, \ 18, 19, 20, 21, 22, 23, 24, 25, \ diff --git a/include/configs/etamin.h b/include/configs/etamin.h index 20a8e2657a..3ff86eed83 100644 --- a/include/configs/etamin.h +++ b/include/configs/etamin.h @@ -16,8 +16,6 @@ /* NAND specific changes for etamin due to different page size */ #undef CONFIG_SYS_NAND_ECCPOS #undef CONFIG_SYS_ENV_SECT_SIZE -#undef CONFIG_NAND_OMAP_ECCSCHEME -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH16_CODE_HW #define CONFIG_SYS_ENV_SECT_SIZE (512 << 10) /* 512 KiB */ #define CONFIG_SYS_NAND_ECCPOS { 2, 3, 4, 5, 6, 7, 8, 9, \ diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h index 86fc8edd65..158773aced 100644 --- a/include/configs/omap3_beagle.h +++ b/include/configs/omap3_beagle.h @@ -26,7 +26,6 @@ 10, 11, 12, 13} #define CONFIG_SYS_NAND_ECCSIZE 512 #define CONFIG_SYS_NAND_ECCBYTES 3 -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_HAM1_CODE_HW #define CONFIG_SYS_ENV_SECT_SIZE SZ_128K /* NAND: SPL falcon mode configs */ #if defined(CONFIG_SPL_OS_BOOT) diff --git a/include/configs/omap3_evm.h b/include/configs/omap3_evm.h index 8d1233c075..eeb9ef8c74 100644 --- a/include/configs/omap3_evm.h +++ b/include/configs/omap3_evm.h @@ -31,7 +31,6 @@ 10, 11, 12, 13} #define CONFIG_SYS_NAND_ECCSIZE 512 #define CONFIG_SYS_NAND_ECCBYTES 3 -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW_DETECTION_SW #define CONFIG_SYS_ENV_SECT_SIZE SZ_128K /* NAND: SPL falcon mode configs */ #if defined(CONFIG_SPL_OS_BOOT) diff --git a/include/configs/omap3_igep00x0.h b/include/configs/omap3_igep00x0.h index ced449d7ad..c1ef040ce3 100644 --- a/include/configs/omap3_igep00x0.h +++ b/include/configs/omap3_igep00x0.h @@ -84,6 +84,5 @@ 50, 51, 52, 53, 54, 55, 56, 57, } #define CONFIG_SYS_NAND_ECCSIZE 512 #define CONFIG_SYS_NAND_ECCBYTES 14 -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW_DETECTION_SW #endif /* __IGEP00X0_H */ diff --git a/include/configs/omap3_logic.h b/include/configs/omap3_logic.h index 0da7388bee..e71f7371d8 100644 --- a/include/configs/omap3_logic.h +++ b/include/configs/omap3_logic.h @@ -27,7 +27,6 @@ #define CONFIG_SYS_NAND_ECCSIZE 512 #define CONFIG_SYS_NAND_ECCBYTES 13 -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW_DETECTION_SW #define CONFIG_SYS_NAND_MAX_OOBFREE 2 #define CONFIG_SYS_NAND_MAX_ECCPOS 56 #endif diff --git a/include/configs/phycore_am335x_r2.h b/include/configs/phycore_am335x_r2.h index 935bb7a07c..af6f7e14df 100644 --- a/include/configs/phycore_am335x_r2.h +++ b/include/configs/phycore_am335x_r2.h @@ -96,7 +96,6 @@ #define CONFIG_SYS_NAND_ECCSIZE 512 #define CONFIG_SYS_NAND_ECCBYTES 14 -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW /* NAND: SPL related configs */ #ifdef CONFIG_SPL_OS_BOOT diff --git a/include/configs/siemens-am33x-common.h b/include/configs/siemens-am33x-common.h index fd74d5735e..615458cde8 100644 --- a/include/configs/siemens-am33x-common.h +++ b/include/configs/siemens-am33x-common.h @@ -82,7 +82,6 @@ #define CONFIG_SYS_NAND_ECCSIZE 512 #define CONFIG_SYS_NAND_ECCBYTES 14 -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW #define CONFIG_SYS_NAND_ECCSTEPS 4 #define CONFIG_SYS_NAND_ECCTOTAL (CONFIG_SYS_NAND_ECCBYTES * \ diff --git a/include/configs/tam3517-common.h b/include/configs/tam3517-common.h index ede7199038..a47e2c5b28 100644 --- a/include/configs/tam3517-common.h +++ b/include/configs/tam3517-common.h @@ -131,7 +131,6 @@ 56, 57, 58, 59, 60, 61, 62, 63} #define CONFIG_SYS_NAND_ECCSIZE 256 #define CONFIG_SYS_NAND_ECCBYTES 3 -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_HAM1_CODE_SW #define CONFIG_SYS_NAND_U_BOOT_START CONFIG_SYS_TEXT_BASE diff --git a/include/configs/ti816x_evm.h b/include/configs/ti816x_evm.h index 5964b59da8..fa99152d6f 100644 --- a/include/configs/ti816x_evm.h +++ b/include/configs/ti816x_evm.h @@ -68,7 +68,6 @@ #define CONFIG_SYS_NAND_ECCSIZE 512 #define CONFIG_SYS_NAND_ECCBYTES 14 -#define CONFIG_NAND_OMAP_ECCSCHEME OMAP_ECC_BCH8_CODE_HW /* SPL */ /* Defines for SPL */ -- 2.39.5