linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v7 0/3]  add the GPMI controller driver for IMX23/IMX28
@ 2011-06-29  8:24 Huang Shijie
  2011-06-29  8:24 ` Huang Shijie
                   ` (4 more replies)
  0 siblings, 5 replies; 29+ messages in thread
From: Huang Shijie @ 2011-06-29  8:24 UTC (permalink / raw)
  To: linux-arm-kernel

The general-purpose media interface(GPMI) controller is a flexible interface
to up to several NAND flashs.

The Bose Ray-Choudhury Hocquenghem(BCH) module is a hardware ECC accelerator.

With the help of BCH, the GPMI controller can choose to do the hardware ECC or
not.

This driver is a _pure_ MTD NAND controller driver now.

The driver depends on another patch set, you can find them at :
	[1] http://marc.info/?l=linux-arm-kernel&m=130933298731899&w=2
	[2] http://marc.info/?l=linux-arm-kernel&m=130933302531947&w=2
	[3] http://marc.info/?l=linux-arm-kernel&m=130933300431921&w=2

Test environment:
	Using imx23 and imx28 boards for test, and burned the ROOTFS
	in the nand flash.

	imx23 :
	console=ttyAMA0,115200 mtdparts=gpmi-nfc:20m(boot),-(user)  ubi.mtd=1 root=ubi0:rootfs0 rootfstype=ubifs gpmi_debug_init

        imx28 :
	# console=ttyAMA0,115200 mtdparts=gpmi-nfc-main:20m(boot),-(user) ubi.mtd=1 root=ubi0:rootfs0 rootfstype=ubifs gpmi_debug_init


v6 --> v7:
	[0] remove the function wrapping the clock.
	[1] use the module_param() for debugging.
	[2] use the new interface of MTD partitions.
		replace add_mtd_partitions() with mtd_device_register().
	[3] use pr_info() to print log.
	[4] add `__devinit` for some functions, etc.
	[5] add `gpmi_nfc` to control the GPMI-NFC driver's initialization.
	[6] others.

v5 --> v6:
	[0] split out the IMX23/IMX28 arch code to separate patches.
	[1] fix bug : missing empty item in the end of platform_id array.
	[2] inconsistent identation.
	[3] others

v4 --> v5:
	[0] rename the files.
	[1] fix PM bug
	[2] remove the rom_helper code, and move the necessary initialization code
		to the main file.
	[3] change the macros from CPU_IS_* to GPMI_IS_*
	[4] remove the default partition layout init code. revert back the 
		partition parsing command line code.
	[5] others

v3 --> v4:
	[0] use the nand_ids{} as the nand database, drop my own database.
	[1] remove the patch for DMA enginer, Shawn will submit his own version.
	[2] use the platform_id to distinguish different Archs.
	[3] fix the strange coding style.
	[4] others.

v2 --> v3:
	[0] merge the imx23 and imx28 into one file(including the header file).
	[1] remove the unuse registers in the headers.
	[2] fix DMA bugs
	[3] add bus width field to nand_attr{}
	[4] others

v1 --> v2:
	[0] merge the common files into the gpmi-nfc-main.c
	[1] change the code to get the clock.
	[2] remove the timing in the nand_device_info{}
	[3] fix DMA errors
	[4] add the nand_device_info.[ch] to generic code
	[5] use the chip->onfi_version for the ONFI nand
	[6] useless init
	[7] others


Huang Shijie (3):
  MTD : add the common code for GPMI-NFC controller driver
  MTD : add support for imx23 and imx28
  MTD : add GPMI-NFC driver in the config and Makefile

 drivers/mtd/nand/Kconfig              |   11 +
 drivers/mtd/nand/Makefile             |    1 +
 drivers/mtd/nand/gpmi-nfc/Makefile    |    3 +
 drivers/mtd/nand/gpmi-nfc/bch-regs.h  |   88 ++
 drivers/mtd/nand/gpmi-nfc/gpmi-nfc.c  | 2484 +++++++++++++++++++++++++++++++++
 drivers/mtd/nand/gpmi-nfc/gpmi-nfc.h  |  495 +++++++
 drivers/mtd/nand/gpmi-nfc/gpmi-regs.h |  163 +++
 drivers/mtd/nand/gpmi-nfc/hal-mxs.c   |  554 ++++++++
 8 files changed, 3799 insertions(+), 0 deletions(-)
 create mode 100644 drivers/mtd/nand/gpmi-nfc/Makefile
 create mode 100644 drivers/mtd/nand/gpmi-nfc/bch-regs.h
 create mode 100644 drivers/mtd/nand/gpmi-nfc/gpmi-nfc.c
 create mode 100644 drivers/mtd/nand/gpmi-nfc/gpmi-nfc.h
 create mode 100644 drivers/mtd/nand/gpmi-nfc/gpmi-regs.h
 create mode 100644 drivers/mtd/nand/gpmi-nfc/hal-mxs.c

^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2011-07-13 23:31 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-06-29  8:24 [PATCH v7 0/3] add the GPMI controller driver for IMX23/IMX28 Huang Shijie
2011-06-29  8:24 ` Huang Shijie
2011-06-29  8:24 ` [PATCH v7 1/3] MTD : add the common code for GPMI-NFC controller driver Huang Shijie
2011-06-29 10:06   ` Wolfram Sang
2011-06-29 10:33     ` Wolfram Sang
2011-06-29 10:46       ` Huang Shijie
2011-06-29 12:29         ` Wolfram Sang
2011-06-29 12:42           ` Russell King - ARM Linux
2011-06-29 12:49             ` Wolfram Sang
2011-06-29 14:00           ` Shawn Guo
2011-06-29 14:15             ` Wolfram Sang
2011-06-29 14:37               ` Shawn Guo
2011-06-30  4:46                 ` Wolfram Sang
2011-06-30  5:28                   ` Shawn Guo
2011-06-30  8:06                     ` [PATCH] dmaengine: mxs-dma: skip request_irq for NO_IRQ Shawn Guo
2011-07-07  0:15                       ` Shawn Guo
2011-07-07  2:06                         ` Vinod Koul
2011-07-07  3:24                           ` Shawn Guo
2011-07-07  3:23                             ` Huang Shijie
2011-07-13 23:31                             ` Koul, Vinod
2011-06-29 12:38   ` [PATCH v7 1/3] MTD : add the common code for GPMI-NFC controller driver Russell King - ARM Linux
2011-06-30  1:50     ` Huang Shijie
2011-06-30 10:27   ` Wolfram Sang
2011-06-30 17:04     ` Wolfram Sang
2011-07-01  5:41       ` Artem Bityutskiy
2011-07-01  6:47         ` Huang Shijie
2011-06-29  8:24 ` [PATCH v7 2/3] MTD : add support for imx23 and imx28 Huang Shijie
2011-06-29  8:24 ` [PATCH v7 3/3] MTD : add GPMI-NFC driver in the config and Makefile Huang Shijie
2011-06-30 10:40 ` [PATCH v7 0/3] add the GPMI controller driver for IMX23/IMX28 Wolfram Sang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).