xref: /openbmc/u-boot/doc/SPI/README.ti_qspi_flash (revision 3335786a)
1QSPI U-Boot support
2------------------
3
4Host processor is connected to serial flash device via qpsi
5interface. QSPI is a kind of spi module that allows single,
6dual and quad read access to external spi devices. The module
7has a memory mapped interface which provide direct interface
8for accessing data form external spi devices.
9
10The one QSPI in the device is primarily intended for fast booting
11from Quad SPI flash devices.
12
13Usecase
14-------
15
16MLO/u-boot.img will be flashed from SD/MMC to the flash device
17using serial flash erase and write commands. Then, switch settings
18will be changed to qspi boot. Then, the ROM code will read MLO
19from the predefined location in the flash, where it was flashed and
20execute it after storing it in SDRAM. Then, the MLO will read
21u-boot.img from flash and execute it from SDRAM.
22
23SPI mode
24-------
25SPI mode uses mtd spi framework for transfer and reception of data.
26Can be used in:
271. Normal mode: use single pin for transfers
282. Dual Mode: use two pins for transfers.
293. Quad mode: use four pin for transfer
30
31Memory mapped read mode
32-----------------------
33In this, SPI controller is configured using configuration port and then
34controller is switched to memory mapped port for data read.
35
36Driver
37------
38drivers/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
44Testing
45-------
46A seperated file named README.dra_qspi_test has been created which gives all the
47details about the commands required to test qspi at U-Boot level.
48