[U-Boot] [UBOOT][PATCHv4 6/6] README: qspi usecase and testing documentation.

Jagan Teki jagannadh.teki at gmail.com
Fri Oct 4 20:38:58 CEST 2013


Hi Sourav,

Please place these these readme files in doc/SPI/*
All these patches tested on top of u-boot-spi.git master-probe?

On Fri, Oct 4, 2013 at 8:21 PM, Sourav Poddar <sourav.poddar at ti.com> wrote:
> Contains documentation and testing details for qspi flash
> interface.
>
> Signed-off-by: Sourav Poddar <sourav.poddar at ti.com>
> ---
>  doc/README.ti_qspi_dra_test |   38 ++++++++++++++++++++++++++++++++++
>  doc/README.ti_qspi_flash    |   47 +++++++++++++++++++++++++++++++++++++++++++
>  2 files changed, 85 insertions(+), 0 deletions(-)
>  create mode 100644 doc/README.ti_qspi_dra_test
>  create mode 100644 doc/README.ti_qspi_flash
>
> diff --git a/doc/README.ti_qspi_dra_test b/doc/README.ti_qspi_dra_test
> new file mode 100644
> index 0000000..c4540ea
> --- /dev/null
> +++ b/doc/README.ti_qspi_dra_test
> @@ -0,0 +1,38 @@
> +-------------------------------------------------
> +   Simple steps used to test the QSPI at U-Boot
> +-------------------------------------------------
> +
> +For #1, build the patched U-Boot and load MLO/u-boot.img
> +
> +----------------------------------
> +Boot from another medium like MMC
> +----------------------------------
> +
> +DRA752 EVM # mmc dev 0
> +DRA752 EVM # fatload mmc 0 0x82000000 MLO
> +DRA752 EVM # fatload mmc 0 0x83000000 u-boot.img
> +
> +--------------------------------------------------
> +Commands to erase/write u-boot/mlo to flash device
> +--------------------------------------------------
> +
> +DRA752 EVM # sf probe 0
> +[should detect the S25FL256S serial flash device]
> +
> +DRA752 EVM # sf erase 0 10000
> +DRA752 EVM # sf erase 10000 10000
> +DRA752 EVM # sf erase 20000 10000
> +DRA752 EVM # sf erase 30000 10000
> +DRA752 EVM # sf erase 40000 10000
> +DRA752 EVM # sf erase 50000 10000
> +DRA752 EVM # sf erase 60000 10000
> +
> +DRA752 EVM # sf write 82000000 0 10000
> +DRA752 EVM # sf write 83000000 20000 70000
> +
These test procedure steps were done in real hw.
Seems like written once, could be generic if you test these steps on
real hw  and palce the same
log here...

> +For #2, set sysboot to QSPI-1 boot mode(SYSBOOT[5:0] = 100110) and power
> +on. ROM should find the GP header at offset 0 and load/execute SPL. SPL
> +then detects that ROM was in QSPI-1 mode (boot code 10) and attempts to
> +find a U-Boot image header at offset 0x20000 (set in the config file)
> +and proceeds to load that image using the U-Boot image payload offset/size
> +from the header. It will then start U-Boot.
> diff --git a/doc/README.ti_qspi_flash b/doc/README.ti_qspi_flash
> new file mode 100644
> index 0000000..1b86d01
> --- /dev/null
> +++ b/doc/README.ti_qspi_flash
> @@ -0,0 +1,47 @@
> +QSPI U-boot support
> +------------------
> +
> +Host processor is connected to serial flash device via qpsi
> +interface. 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 one QSPI in the device is primarily intended for fast booting
> +from Quad SPI flash devices.
> +
> +Usecase
> +-------
> +
> +MLO/u-boot.img will be flashed from SD/MMC to the flash device
> +using serial flash erase and write commands. Then, switch settings
> +will be changed to qspi boot. Then, the ROM code will read MLO
> +from the predefined location in the flash, where it was flashed and
> +execute it after storing it in SDRAM. Then, the MLO will read
> +u-boot.img from flash and execute it from SDRAM.
> +
> +SPI mode
> +-------
> +SPI mode uses mtd spi framework for transfer and reception of data.
> +Can be used in:
> +1. Normal mode: use single pin for transfers
> +2. Dual Mode: use two pins for transfers.
> +3. Quad mode: use four pin for transfer
> +
> +Memory mapped read mode
> +-----------------------
> +In this, SPI controller is configured using configuration port and then
> +controler is switched to memory mapped port for data read.
> +
> +Driver
> +------
> +drivers/qspi/ti_qspi.c
> +    - Newly created file which is responsible for configuring the
> +       qspi controller and also for providing the low level api which
> +       is responsible for transferring the datas from host controller
> +       to flash device and vice versa.
> +
> +Testing
> +-------
> +A seperated file named README.dra_qspi_test has been created which gives all the
> +details about the commands required to test qspi at u-boot level.
> --
> 1.7.1
>
Please use the doc/SPI/status.txt as an example format for writing new
readme files.

-- 
Thanks,
Jagan.
--------
Jagannadha Sutradharudu Teki,
E: jagannadh.teki at gmail.com, P: +91-9676773388
Engineer - System Software Hacker
U-boot - SPI Custodian and Zynq APSOC
Ln: http://www.linkedin.com/in/jaganteki


More information about the U-Boot mailing list