From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sourav Poddar Date: Sat, 5 Oct 2013 01:15:24 +0530 Subject: [U-Boot] [UBOOT][PATCHv4 6/6] README: qspi usecase and testing documentation. In-Reply-To: References: <1380898293-13755-1-git-send-email-sourav.poddar@ti.com> <1380898293-13755-7-git-send-email-sourav.poddar@ti.com> Message-ID: <524F1AD4.4000801@ti.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Saturday 05 October 2013 12:08 AM, Jagan Teki wrote: > Hi Sourav, > > Please place these these readme files in doc/SPI/* > All these patches tested on top of u-boot-spi.git master-probe? Yes, this are tested on the above branch. > On Fri, Oct 4, 2013 at 8:21 PM, Sourav Poddar wrote: >> Contains documentation and testing details for qspi flash >> interface. >> >> Signed-off-by: Sourav Poddar >> --- >> 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. >