spi/qspi: Add qspi flash controller
authorSourav Poddar <sourav.poddar@ti.com>
Tue, 20 Aug 2013 13:25:48 +0000 (18:55 +0530)
committerMark Brown <broonie@linaro.org>
Thu, 22 Aug 2013 12:08:06 +0000 (13:08 +0100)
commit505a14954e2d7f2321a73f7a650bb6591d2fc1d3
treec9317571cc1480c4c2f793d692b2c6efce00af91
parentce74ac80d25bcb1bf5c6638cf376054c9b7c4b0b
spi/qspi: Add qspi flash controller

The patch add basic support for the quad spi controller.

QSPI is a kind of spi module that allows single,
dual and quad read access to external spi devices. The module
has a memory mapped interface which provide direct interface
for accessing data form external spi devices.

The patch will configure controller clocks, device control
register and for defining low level transfer apis which
will be used by the spi framework to transfer data to
the slave spi device(flash in this case).

Test details:
-------------
Tested this on dra7 board.
Test1: Ran mtd_stesstest for 40000 iterations.
   - All iterations went through without failure.
Test2: Use mtd utilities:
  - flash_erase to erase the flash device
  - mtd_debug read to read data back.
  - mtd_debug write to write to the data flash.
 diff between the write and read data shows zero.

Acked-by: Felipe Balbi<balbi@ti.com>
Reviewed-by: Felipe Balbi<balbi@ti.com>
Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
Documentation/devicetree/bindings/spi/ti_qspi.txt [new file with mode: 0644]
drivers/spi/Kconfig
drivers/spi/Makefile
drivers/spi/spi-ti-qspi.c [new file with mode: 0644]