diff options
| author | Tom Rini <trini@ti.com> | 2014-01-13 13:45:15 -0500 | 
|---|---|---|
| committer | Tom Rini <trini@ti.com> | 2014-01-13 13:45:15 -0500 | 
| commit | 10fcda8e25cb9477b47a62edb716f81c9d5e1f0e (patch) | |
| tree | b705f678c1eb1161227c6e1996a0d5c008ea4b64 /doc/SPI | |
| parent | d104a0c6a19da2d35cfae447e909b5bda727895a (diff) | |
| parent | 35a55fb57fffb615e6b20980fb317e162076adb4 (diff) | |
| download | olio-uboot-2014.01-10fcda8e25cb9477b47a62edb716f81c9d5e1f0e.tar.xz olio-uboot-2014.01-10fcda8e25cb9477b47a62edb716f81c9d5e1f0e.zip | |
Merge branch 'master' of git://git.denx.de/u-boot-spi
Diffstat (limited to 'doc/SPI')
| -rw-r--r-- | doc/SPI/README.dual-flash | 92 | ||||
| -rw-r--r-- | doc/SPI/README.ftssp010_spi_test | 41 | ||||
| -rw-r--r-- | doc/SPI/status.txt | 11 | 
3 files changed, 139 insertions, 5 deletions
| diff --git a/doc/SPI/README.dual-flash b/doc/SPI/README.dual-flash new file mode 100644 index 000000000..6c88d65dd --- /dev/null +++ b/doc/SPI/README.dual-flash @@ -0,0 +1,92 @@ +SPI/QSPI Dual flash connection modes: +===================================== + +This describes how SPI/QSPI flash memories are connected to a given +controller in a single chip select line. + +Current spi_flash framework supports, single flash memory connected +to a given controller with single chip select line, but there are some +hw logics(ex: xilinx zynq qspi) that describes two/dual memories are +connected with a single chip select line from a controller. + +"dual_flash" from include/spi.h describes these types of connection mode + +Possible connections: +-------------------- +SF_SINGLE_FLASH: +       - single spi flash memory connected with single chip select line. + +  +------------+             CS         +---------------+ +  |            |----------------------->|               | +  | Controller |         I0[3:0]        | Flash memory  | +  | SPI/QSPI   |<======================>| (SPI/QSPI)    | +  |            |           CLK          |               | +  |            |----------------------->|               | +  +------------+                        +---------------+ + +SF_DUAL_STACKED_FLASH: +       - dual spi/qspi flash memories are connected with a single chipselect +         line and these two memories are operating stacked fasion with shared buses. +       - xilinx zynq qspi controller has implemented this feature [1] + +  +------------+        CS             +---------------+ +  |            |---------------------->|               | +  |            |              I0[3:0]  | Upper Flash   | +  |            |            +=========>| memory        | +  |            |            |     CLK  | (SPI/QSPI)    | +  |            |            |    +---->|               | +  | Controller |        CS  |    |     +---------------+ +  | SPI/QSPI   |------------|----|---->|               | +  |            |    I0[3:0] |    |     | Lower Flash   | +  |            |<===========+====|====>| memory        | +  |            |          CLK    |     | (SPI/QSPI)    | +  |            |-----------------+---->|               | +  +------------+                       +---------------+ + +       - two memory flash devices should has same hw part attributes (like size, +         vendor..etc) +       - Configurations: +               on LQSPI_CFG register, Enable TWO_MEM[BIT:30] on LQSPI_CFG +               Enable U_PAGE[BIT:28] if U_PAGE flag set - upper memory +               Disable U_PAGE[BIT:28] if U_PAGE flag unset - lower memory +       - Operation: +               accessing memories serially like one after another. +               by default, if U_PAGE is unset lower memory should accessible, +               once user wants to access upper memory need to set U_PAGE. + +SPI_FLASH_CONN_DUALPARALLEL: +	- dual spi/qspi flash memories are connected with a single chipselect +	  line and these two memories are operating parallel with separate buses. +	- xilinx zynq qspi controller has implemented this feature [1] + +  +-------------+           CS		+---------------+ +  |		|---------------------->|		| +  | 		|        I0[3:0]	| Upper Flash	| +  | 		|<=====================>| memory	| +  |		|	   CLK		| (SPI/QSPI)	| +  |		|---------------------->|		| +  | Controller	|	    CS		+---------------+ +  | SPI/QSPI	|---------------------->|		| +  | 		|        I0[3:0]	| Lower Flash	| +  | 		|<=====================>| memory	| +  |		|	   CLK		| (SPI/QSPI)	| +  |		|---------------------->|		| +  +-------------+			+---------------+ + +	- two memory flash devices should has same hw part attributes (like size, +	  vendor..etc) +	- Configurations: +		Need to enable SEP_BUS[BIT:29],TWO_MEM[BIT:30] on LQSPI_CFG register. +	- Operation: +		Even bits, i.e. bit 0, 2, 4 ., of a data word is located in the lower memory +		and odd bits, i.e. bit 1, 3, 5, ., of a data word is located in the upper memory. + +Note: Technically there is only one CS line from the controller, but +zynq qspi controller has an internal hw logic to enable additional CS +when controller is configured for dual memories. + +[1] http://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf + +-- +Jagannadha Sutradharudu Teki <jaganna@xilinx.com> +05-01-2014. diff --git a/doc/SPI/README.ftssp010_spi_test b/doc/SPI/README.ftssp010_spi_test new file mode 100644 index 000000000..1d86f3623 --- /dev/null +++ b/doc/SPI/README.ftssp010_spi_test @@ -0,0 +1,41 @@ +SPI Flash test on Faraday A369 EVB: +================================== + +U-Boot 2014.01-rc2-g3444b6f (Dec 20 2013 - 10:58:40) + +CPU:   FA626TE 528 MHz +AHB:   132 MHz +APB:   66 MHz +I2C:   ready +DRAM:  256 MiB +MMU:   on +NAND:  512 MiB +MMC:   ftsdc010: 0 +*** Warning - bad CRC, using default environment + +In:    serial +Out:   serial +Err:   serial +Net:   FTGMAC100#0 +Hit any key to stop autoboot:  0 +=> sf probe 0:0 +SF: Detected MX25L1605D with page size 256 Bytes, erase size 64 KiB, total 2 MiB +=> sf read 0x10800000 0 0x400 +SF: 1024 bytes @ 0x0 Read: OK +=> md 0x10800000 +10800000: ea000013 e59ff014 e59ff014 e59ff014    ................ +10800010: e59ff014 e59ff014 e59ff014 e59ff014    ................ +10800020: 1ff7b0c0 1ff7b120 1ff7b180 1ff7b1e0    .... ........... +10800030: 1ff7b240 1ff7b2a0 1ff7b300 deadbeef    @............... +10800040: 10800000 0002c1f0 0007409c 00032048    .........@..H .. +10800050: 1fd6af40 e10f0000 e3c0001f e38000d3    @............... +10800060: e129f000 eb000001 eb000223 e12fff1e    ..).....#...../. +10800070: e3a00000 ee070f1e ee080f17 ee070f15    ................ +10800080: ee070f9a ee110f10 e3c00c03 e3c00087    ................ +10800090: e3c00a02 e3800002 e3800a01 ee010f10    ................ +108000a0: e1a0c00e eb007a68 e1a0e00c e1a0f00e    ....hz.......... +108000b0: e1a00000 e1a00000 e1a00000 e1a00000    ................ +108000c0: e51fd078 e58de000 e14fe000 e58de004    x.........O..... +108000d0: e3a0d013 e169f00d e1a0e00f e1b0f00e    ......i......... +108000e0: e24dd048 e88d1fff e51f20a0 e892000c    H.M...... ...... +108000f0: e28d0048 e28d5034 e1a0100e e885000f    H...4P.......... diff --git a/doc/SPI/status.txt b/doc/SPI/status.txt index 62c3c8541..13889f545 100644 --- a/doc/SPI/status.txt +++ b/doc/SPI/status.txt @@ -11,6 +11,11 @@ SPI FLASH (drivers/mtd/spi):  - Bank Address Register (Accessing flashes > 16Mbytes in 3-byte addressing)  - Added memory_mapped support for read operations.  - Common probe support for all supported flash vendors except, ramtron. +- Extended read commands support(dual read, dual IO read) +- Quad Page Program support. +- Quad Read support(quad fast read, quad IO read) +- Dual flash connection topology support(accessing two spi flash memories with single cs) +- Banking support on dual flash connection topology.  SPI DRIVERS (drivers/spi):  - @@ -18,14 +23,10 @@ SPI DRIVERS (drivers/spi):  TODO:  - Runtime detection of spi_flash params, SFDP(if possible)  - Add support for multibus build/accessing. -- Extended read commands support(dual read, dual IO read) -- Quad Page Program support. -- Quad Read support(quad fast read, quad IO read) -- Dual flash connection topology support(accessing two spi flash memories with single cs) -- Banking support on dual flash connection topology.  - Need proper cleanups on spi_flash and drivers.  --  Jagannadha Sutradharudu Teki <jagannadh.teki@gmail.com>  18-09-2013.  07-10-2013. +08-01-2014. |