]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - doc/SPI/README.ti_qspi_flash
Merge branch 'u-boot-microblaze/zynq' into 'u-boot-arm/master'
[karo-tx-uboot.git] / doc / SPI / README.ti_qspi_flash
1 QSPI U-boot support
2 ------------------
3
4 Host processor is connected to serial flash device via qpsi
5 interface. QSPI is a kind of spi module that allows single,
6 dual and quad read access to external spi devices. The module
7 has a memory mapped interface which provide direct interface
8 for accessing data form external spi devices.
9
10 The one QSPI in the device is primarily intended for fast booting
11 from Quad SPI flash devices.
12
13 Usecase
14 -------
15
16 MLO/u-boot.img will be flashed from SD/MMC to the flash device
17 using serial flash erase and write commands. Then, switch settings
18 will be changed to qspi boot. Then, the ROM code will read MLO
19 from the predefined location in the flash, where it was flashed and
20 execute it after storing it in SDRAM. Then, the MLO will read
21 u-boot.img from flash and execute it from SDRAM.
22
23 SPI mode
24 -------
25 SPI mode uses mtd spi framework for transfer and reception of data.
26 Can be used in:
27 1. Normal mode: use single pin for transfers
28 2. Dual Mode: use two pins for transfers.
29 3. Quad mode: use four pin for transfer
30
31 Memory mapped read mode
32 -----------------------
33 In this, SPI controller is configured using configuration port and then
34 controler is switched to memory mapped port for data read.
35
36 Driver
37 ------
38 drivers/qspi/ti_qspi.c
39     - Newly created file which is responsible for configuring the
40         qspi controller and also for providing the low level api which
41         is responsible for transferring the datas from host controller
42         to flash device and vice versa.
43
44 Testing
45 -------
46 A seperated file named README.dra_qspi_test has been created which gives all the
47 details about the commands required to test qspi at u-boot level.