Philip Avinash
62116e5171
mtd: nand: omap2: Support for hardware BCH error correction.
...
ELM module can be used for hardware error correction of BCH 4 & 8 bit.
ELM module functionality is verified by checking the availability of
handle for ELM module in device tree. Hence supporting
1. ELM module available, BCH error correction done by ELM module. Also
support read & write page in one shot by adding custom read_page and
write_page methods. This helps in optimizing code for NAND flashes with
page size less than 4 KB.
2. If ELM module not available fall back to software BCH error
correction support.
New structure member is added to omap_nand_info
1. "is_elm_used" to know the status of whether the ELM module is used for
error correction or not.
2. "elm_dev" device pointer to elm device on detection of ELM module.
Also being here update the device tree documentation of gpmc-nand for
adding optional property elm_id.
Note:
ECC layout uses 1 extra bytes for 512 byte of data to handle erased
pages. Extra byte programmed to zero for programmed pages. Also BCH8
requires 14 byte ecc to maintain compatibility with RBL ECC layout.
This results a common ecc layout across RBL, U-boot & Linux with BCH8.
Signed-off-by: Philip Avinash <avinashphilip@ti.com>
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
2013-02-04 09:26:29 +02:00
..
ad5449.h
iio:dac: Add support for the ad5449
2012-10-19 18:46:51 +01:00
ad5755.h
iio:dac: Add ad5755 driver
2012-09-17 20:55:54 +01:00
ad7266.h
iio:adc: Add AD7265/AD7266 support
2012-06-30 10:15:07 +01:00
ad7298.h
staging:iio: Move the ad7298 driver out of staging
2012-11-19 22:22:15 +00:00
ad7791.h
staging:iio:adc: Add AD7791 driver
2012-09-08 10:20:09 +01:00
ad7793.h
staging:iio: Move ad7793 driver out of staging
2012-11-30 12:57:08 +00:00
ad7887.h
staging:iio: Move the ad7887 driver out of staging
2012-11-05 20:39:54 +00:00
ads7828.h
hwmon: (ads7828) driver cleanup
2012-12-05 10:55:54 -08:00
asoc-imx-ssi.h
ARM: imx: remove header file mach/irqs.h
2012-10-15 10:05:43 +08:00
asoc-kirkwood.h
ARM: orion: move platform_data definitions
2012-09-19 17:42:17 +02:00
asoc-mx27vis.h
ASoC: mx27vis: retrieve gpio numbers from platform_data
2012-09-17 07:35:08 -04:00
asoc-palm27x.h
ARM: pxa: move platform_data definitions
2012-09-14 11:18:10 +02:00
asoc-s3c.h
ASoC: Samsung: Get I2S src_clk from clock alias id.
2012-11-28 19:18:00 +00:00
asoc-s3c24xx_simtec.h
ARM: samsung: move platform_data definitions
2012-09-19 17:42:18 +02:00
asoc-ti-mcbsp.h
Sound updates for 3.7-rc1
2012-10-09 07:07:14 +09:00
at91_adc.h
ARM: AT91: Add platform data for the AT91 ADCs
2012-05-14 13:17:49 -07:00
ata-pxa.h
ARM: pxa: move platform_data definitions
2012-09-14 11:18:10 +02:00
ata-samsung_cf.h
ARM: samsung: move platform_data definitions
2012-09-19 17:42:18 +02:00
atmel-aes.h
ARM: at91: move platform_data definitions
2012-09-14 11:16:40 +02:00
atmel.h
atmel: move ATMEL_MAX_UART to platform_data/atmel.h
2012-11-19 17:44:54 +01:00
camera-mx1.h
ARM: imx: move platform_data definitions
2012-09-14 11:17:21 +02:00
camera-mx2.h
Merge branch 'multiplatform/platform-data' into next/multiplatform
2012-09-22 01:07:21 -07:00
camera-mx3.h
ARM: imx: move platform_data definitions
2012-09-14 11:17:21 +02:00
camera-pxa.h
ARM: pxa: move platform_data definitions
2012-09-14 11:18:10 +02:00
clk-integrator.h
clk: move IM-PD1 clocks to drivers/clk
2012-11-21 11:02:44 -08:00
clk-nomadik.h
ARM: nomadik: convert to generic clock
2012-06-10 18:41:40 +02:00
clk-realview.h
clk: convert ARM RealView to common clk
2012-08-24 17:42:10 -07:00
clk-u300.h
ARM: u300: convert to common clock
2012-07-11 15:36:45 -07:00
clk-ux500.h
clk: ux500: First version of clock definitions for ux500
2012-09-06 15:58:04 -07:00
clocksource-nomadik-mtu.h
ARM: plat-nomadik: move MTU, kill plat-nomadik
2012-11-05 09:55:33 +01:00
cpsw.h
cpsw: simplify the setup of the register pointers
2012-11-14 22:09:06 -05:00
crypto-ux500.h
ARM: plat-nomadik: move DMA40 header to <linux/platform_data>
2012-11-05 09:55:32 +01:00
davinci_asp.h
ASoC: McASP: remove unused variables
2012-12-07 14:46:56 +09:00
db8500_thermal.h
Thermal: Add ST-Ericsson DB8500 thermal driver.
2012-11-15 20:50:34 +08:00
dma-atmel.h
ARM: at91: move platform_data definitions
2012-09-14 11:16:40 +02:00
dma-ep93xx.h
ARM: ep93xx: move platform_data definitions
2012-09-14 11:16:55 +02:00
dma-imx-sdma.h
ARM: imx: move platform_data definitions
2012-09-14 11:17:21 +02:00
dma-imx.h
dma: imx-dma: remove cpu_is_xxx by using platform_device_id
2012-10-15 10:03:17 +08:00
dma-mmp_tdma.h
ARM: pxa: move platform_data definitions
2012-09-14 11:18:10 +02:00
dma-mv_xor.h
dma: mv_xor: remove the pool_size from platform_data
2012-11-20 15:59:00 +01:00
dma-ste-dma40.h
ARM: plat-nomadik: move DMA40 header to <linux/platform_data>
2012-11-05 09:55:32 +01:00
dmtimer-omap.h
ARM: OMAP: Add platform data header for DMTIMERs
2012-11-16 10:35:08 -06:00
dsp-omap.h
ARM: omap: move platform_data definitions
2012-09-19 17:39:52 +02:00
dwc3-exynos.h
dwc3-omap.h
efm32-uart.h
ehci-sh.h
usb: ehci-sh: Add PHY init function with platform data
2012-04-18 13:52:35 -07:00
elm.h
mtd: nand: omap2: Support for hardware BCH error correction.
2013-02-04 09:26:29 +02:00
emif_plat.h
memory: emif: add basic infrastructure for EMIF driver
2012-05-02 00:10:49 -07:00
eth-netx.h
ARM: netx: move platform_data definitions
2012-09-14 11:17:36 +02:00
exynos_thermal.h
thermal: exynos: register the tmu sensor with the kernel thermal layer
2012-09-24 14:44:38 +08:00
fsa9480.h
gpio-em.h
gpio: Emma Mobile GPIO driver V2
2012-05-18 00:00:45 +02:00
gpio-omap.h
ARM: OMAP: Remove NEED_MACH_GPIO_H
2012-11-02 12:00:36 -07:00
gpio-ts5500.h
gpio: add TS-5500 DIO blocks support
2012-12-10 11:23:25 +01:00
hwmon-s3c.h
ARM: samsung: move platform_data definitions
2012-09-19 17:42:18 +02:00
i2c-cbus-gpio.h
i2c: i2c-cbus-gpio: introduce driver
2012-11-19 09:57:16 +01:00
i2c-davinci.h
ARM: davinci: move platform_data definitions
2012-09-14 11:16:54 +02:00
i2c-imx.h
ARM: imx: move platform_data definitions
2012-09-14 11:17:21 +02:00
i2c-nomadik.h
i2c: nomadik: Add Device Tree support to the Nomadik I2C driver
2012-10-06 13:20:33 +02:00
i2c-nuc900.h
ARM: w90x900: move platform_data definitions
2012-09-14 11:18:59 +02:00
i2c-s3c2410.h
ARM: samsung: move platform_data definitions
2012-09-19 17:42:18 +02:00
imx-iram.h
[media] coda: Fix build due to iram.h rename
2013-01-08 09:44:06 +01:00
ina2xx.h
hwmon: INA219 and INA226 support
2012-05-22 06:48:02 -07:00
iommu-omap.h
iommu/omap: Adapt to runtime pm
2012-12-03 18:48:23 +01:00
irda-pxaficp.h
ARM: pxa: move platform_data definitions
2012-09-14 11:18:10 +02:00
keyboard-pxa930_rotary.h
ARM: pxa: move platform_data definitions
2012-09-14 11:18:10 +02:00
keyboard-spear.h
ARM: spear: move platform_data definitions
2012-09-19 17:42:19 +02:00
keypad-ep93xx.h
ARM: ep93xx: move platform_data definitions
2012-09-14 11:16:55 +02:00
keypad-nomadik-ske.h
ARM: nomadik: move platform_data definitions
2012-09-14 11:19:00 +02:00
keypad-omap.h
ARM: omap: move platform_data definitions
2012-09-19 17:39:52 +02:00
keypad-pxa27x.h
ARM: pxa: move platform_data definitions
2012-09-14 11:18:10 +02:00
keypad-w90p910.h
ARM: w90x900: move platform_data definitions
2012-09-14 11:18:59 +02:00
keyscan-davinci.h
ARM: davinci: move platform_data definitions
2012-09-14 11:16:54 +02:00
lcd-mipid.h
ARM: omap: move platform_data definitions
2012-09-19 17:39:52 +02:00
leds-kirkwood-netxbig.h
ARM: orion: move platform_data definitions
2012-09-19 17:42:17 +02:00
leds-kirkwood-ns2.h
ARM: orion: move platform_data definitions
2012-09-19 17:42:17 +02:00
leds-lm355x.h
leds: Add new LED driver for lm355x chips
2012-09-11 18:32:43 +08:00
leds-lm3642.h
leds: Add new LED driver for lm3642 chips
2012-09-13 11:56:41 +08:00
leds-omap.h
ARM: OMAP: Move plat/led.h to include/linux/platform_data
2012-10-17 12:03:18 -07:00
leds-pca9633.h
leds: add output driver configuration for pca9633 led driver
2012-09-24 19:12:29 +08:00
leds-renesas-tpu.h
leds-s3c24xx.h
ARM: samsung: move platform_data definitions
2012-09-19 17:42:18 +02:00
lm3630_bl.h
backlight: add Backlight driver for lm3630 chip
2012-10-06 03:04:53 +09:00
lm3639_bl.h
backlight: add new lm3639 backlight driver
2012-10-06 03:04:53 +09:00
lp855x.h
drivers/video/backlight/lp855x_bl.c: use generic PWM functions
2012-12-17 17:15:16 -08:00
lp8727.h
lp8727_charger: More pure cosmetic improvements
2012-09-20 18:07:23 -07:00
macb.h
net/at91_ether: add pdata flag for reverse Eth addr
2012-10-23 02:40:10 -04:00
max197.h
hwmon: add Maxim MAX197 support
2012-09-23 21:08:33 -07:00
max310x.h
serial: New serial driver MAX310X
2012-08-16 12:12:25 -07:00
mfd-mcp-sa11x0.h
ARM: sa1100: move platform_data definitions
2012-09-14 11:18:57 +02:00
mipi-csis.h
[media] s5p-csis: Allow to specify pixel clock's source through platform data
2012-10-05 22:35:16 -03:00
mmc-davinci.h
ARM: davinci: move platform_data definitions
2012-09-14 11:16:54 +02:00
mmc-esdhc-imx.h
ARM: imx: move platform_data definitions
2012-09-14 11:17:21 +02:00
mmc-msm_sdcc.h
ARM: msm: move platform_data definitions
2012-09-14 11:17:35 +02:00
mmc-mvsdio.h
ARM: orion: move platform_data definitions
2012-09-19 17:42:17 +02:00
mmc-mxcmmc.h
ARM: imx: move platform_data definitions
2012-09-14 11:17:21 +02:00
mmc-omap.h
ARM: arm-soc: Header cleanups
2012-12-12 11:45:16 -08:00
mmc-pxamci.h
ARM: pxa: move platform_data definitions
2012-09-14 11:18:10 +02:00
mmc-s3cmci.h
ARM: samsung: move platform_data definitions
2012-09-19 17:42:18 +02:00
mmc-sdhci-tegra.h
ARM: tegra: move sdhci platform_data definition
2012-09-14 11:18:57 +02:00
mmp_audio.h
ASoC: mmp: add audio dma support
2012-06-13 13:13:37 +01:00
mmp_dma.h
dmaengine: mmp-pdma support
2012-09-14 08:14:07 +05:30
mouse-pxa930_trkball.h
ARM: pxa: move platform_data definitions
2012-09-14 11:18:10 +02:00
msm_serial_hs.h
mtd-davinci-aemif.h
ARM: davinci: move platform_data definitions
2012-09-14 11:16:54 +02:00
mtd-davinci.h
ARM: davinci: move platform_data definitions
2012-09-14 11:16:54 +02:00
mtd-mxc_nand.h
ARM: imx: move platform_data definitions
2012-09-14 11:17:21 +02:00
mtd-nand-omap2.h
ARM: OMAP2+: gpmc: nand register helper bch update
2012-10-15 14:42:10 +05:30
mtd-nand-pxa3xx.h
ARM: pxa: move platform_data definitions
2012-09-14 11:18:10 +02:00
mtd-nand-s3c2410.h
ARM: samsung: move platform_data definitions
2012-09-19 17:42:18 +02:00
mtd-onenand-omap2.h
ARM: OMAP2+: onenand: header cleanup
2012-10-15 14:42:03 +05:30
mtd-orion_nand.h
ARM: orion: move platform_data definitions
2012-09-19 17:42:17 +02:00
mv_usb.h
usb/marvell: remove conditional compilation of clk code
2012-07-30 17:25:12 -07:00
ntc_thermistor.h
omap-abe-twl6040.h
omap-twl4030.h
ASoC: omap-twl4030: Update the header file to support more boards
2012-12-07 12:54:31 +09:00
omap-wd-timer.h
ARM: OMAP2+: WDT: move init; add read_reset_sources pdata function pointer
2012-10-29 20:49:44 -06:00
omap1_bl.h
ARM: OMAP1: move omap1_bl pdata out of arch/arm/*
2012-09-10 16:34:00 -07:00
omap4-keypad.h
omap_drm.h
staging: drm/omap: add support for ARCH_MULTIPLATFORM
2012-10-30 11:10:00 -07:00
omap_ocp2scp.h
drivers: bus: ocp2scp: add pdata support
2012-11-07 09:35:53 -08:00
pcmcia-pxa2xx_viper.h
ARM: pxa: move platform_data definitions
2012-09-14 11:18:10 +02:00
pinctrl-coh901.h
pinctrl/u300/coh901: stop spawning pinctrl from GPIO
2012-11-21 08:55:22 +01:00
pinctrl-nomadik.h
pinctrl/nomadik: merge old pincfg header
2012-11-05 09:55:29 +01:00
pn544.h
NFC: Move pn544.h to linux/platform_data/
2012-11-19 23:56:59 +01:00
pxa2xx_udc.h
ARM: move udc_pxa2xx.h to linux/platform_data
2012-11-16 11:35:30 +00:00
pxa_sdhci.h
mmc: sdhci-pxav3: add quirks2
2012-12-06 13:54:51 -05:00
remoteproc-omap.h
- Remoteproc Recovery - by Fernando Guzman Lugo - when a remote processor
2012-10-04 09:11:57 -07:00
s3c-hsotg.h
usb: s3c-hsotg: Add header file protection macros in s3c-hsotg.h
2012-07-17 10:54:29 -07:00
s3c-hsudc.h
sa11x0-serial.h
ARM: move serial_sa1100.h header file to linux/platform_data
2012-11-16 11:35:29 +00:00
sc18is602.h
spi: Master driver for NXP SC18IS602/603
2012-08-22 19:34:51 +01:00
sccnxp.h
serial: New serial driver SCCNXP
2012-09-05 13:21:46 -07:00
serial-imx.h
ARM: imx: move platform_data definitions
2012-09-14 11:17:21 +02:00
serial-omap.h
ARM: OMAP: Move plat/omap-serial.h to include/linux/platform_data/serial-omap.h
2012-12-14 14:50:09 -08:00
shmob_drm.h
drm: Renesas SH Mobile DRM driver
2012-09-18 12:28:22 +02:00
sht15.h
hwmon: (sht15) move header to linux/platform_data/
2012-09-23 21:08:35 -07:00
spi-clps711x.h
spi/clps711x: New SPI master driver
2012-12-05 23:14:38 +00:00
spi-davinci.h
ARM: davinci: move platform_data definitions
2012-09-14 11:16:54 +02:00
spi-ep93xx.h
ARM: ep93xx: move platform_data definitions
2012-09-14 11:16:55 +02:00
spi-imx.h
ARM: imx: move platform_data definitions
2012-09-14 11:17:21 +02:00
spi-nuc900.h
ARM: w90x900: move platform_data definitions
2012-09-14 11:18:59 +02:00
spi-omap2-mcspi.h
spi/omap: fix D0/D1 direction confusion
2012-11-14 12:16:17 +09:00
spi-s3c64xx.h
ARM: samsung: move platform_data definitions
2012-09-19 17:42:18 +02:00
tegra_emc.h
tegra_usb.h
usb: ehci-tegra: Add vbus_gpio to platform data
2012-04-18 10:26:37 -06:00
ti_am335x_adc.h
IIO : ADC: tiadc: Add support of TI's ADC driver
2012-11-05 23:50:27 +01:00
touchscreen-s3c2410.h
ARM: samsung: move platform_data definitions
2012-09-19 17:42:18 +02:00
uio_dmem_genirq.h
Add new uio device for dynamic memory allocation
2012-10-24 15:39:08 -07:00
uio_pruss.h
uio: uio_pruss: replace private SRAM API with genalloc
2012-10-27 16:28:32 +05:30
usb-davinci.h
ARM: davinci: move platform_data definitions
2012-09-14 11:16:54 +02:00
usb-ehci-mxc.h
ARM: imx: move platform_data definitions
2012-09-14 11:17:21 +02:00
usb-ehci-orion.h
ARM: orion: move platform_data definitions
2012-09-19 17:42:17 +02:00
usb-ehci-s5p.h
ARM: samsung: move platform_data definitions
2012-09-19 17:42:18 +02:00
usb-exynos.h
ARM: samsung: move platform_data definitions
2012-09-19 17:42:18 +02:00
usb-imx_udc.h
ARM: imx: move platform_data definitions
2012-09-14 11:17:21 +02:00
usb-musb-ux500.h
ARM: nomadik: move platform_data definitions
2012-09-14 11:19:00 +02:00
usb-mx2.h
ARM: imx: move platform_data definitions
2012-09-14 11:17:21 +02:00
usb-ohci-pxa27x.h
ARM: pxa: move platform_data definitions
2012-09-14 11:18:10 +02:00
usb-ohci-s3c2410.h
ARM: samsung: move platform_data definitions
2012-09-19 17:42:18 +02:00
usb-omap.h
mfd: omap-usb-host: get rid of cpu_is_omap..() macros
2012-12-14 11:48:06 -08:00
usb-pxa3xx-ulpi.h
ARM: pxa: move platform_data definitions
2012-09-14 11:18:10 +02:00
usb-s3c2410_udc.h
ARM: samsung: move platform_data definitions
2012-09-19 17:42:18 +02:00
video-ep93xx.h
ARM: ep93xx: move platform_data definitions
2012-09-14 11:16:55 +02:00
video-imxfb.h
ARM: imx: move platform_data definitions
2012-09-14 11:17:21 +02:00
video-msm_fb.h
ARM: msm: move platform_data definitions
2012-09-14 11:17:35 +02:00
video-mx3fb.h
ARM: imx: move platform_data definitions
2012-09-14 11:17:21 +02:00
video-nuc900fb.h
ARM: w90x900: move platform_data definitions
2012-09-14 11:18:59 +02:00
video-pxafb.h
ARM: pxa: move platform_data definitions
2012-09-14 11:18:10 +02:00
video-vt8500lcdfb.h
ARM: vt8500: move platform_data definitions
2012-09-14 11:18:58 +02:00
voltage-omap.h
ARM: omap: move platform_data definitions
2012-09-19 17:39:52 +02:00
wiznet.h
Ethernet driver for the WIZnet W5300 chip
2012-04-05 01:43:02 -04:00