flash/nor/sh_qspi: Add SH QSPI driver
authorMarek Vasut <marek.vasut@gmail.com>
Tue, 2 Apr 2019 14:44:18 +0000 (16:44 +0200)
committerOleksij Rempel <linux@rempel-privat.de>
Wed, 22 Jan 2020 05:50:20 +0000 (05:50 +0000)
commit8b7265700136d6035d2769531a6202295f7113a6
treecaec6cc63244a2708bf26e435e65c446d3c8b7fc
parentd612baacaa3fef549c446053089867d7b134ccfd
flash/nor/sh_qspi: Add SH QSPI driver

Add driver for the SH QSPI controller. This SPI controller is often
connected to the boot SPI NOR flash on R-Car Gen2 platforms.

Add the following two lines to board TCL file to bind the driver on
R-Car Gen2 SoC and make SRAM work area available:

  flash bank flash0 sh_qspi 0xe6b10000 0 0 0 ${_TARGETNAME}0 cs0
  ${_TARGETNAME}0 configure -work-area-phys 0xe6300000 -work-area-virt 0xe6300000 -work-area-size 0x10000 -work-area-backup 0

To install mainline U-Boot on the board, use the following procedure:

  proc update_uboot {} {
    # SPL
    flash erase_sector 0 0x0 0x0
    flash write_bank 0 /u-boot/spl/u-boot-spl.bin 0x0
    # U-Boot
    flash erase_sector 0 0x5 0x6
    flash write_bank 0 /u-boot/u-boot.img 0x140000
  }

Change-Id: Ief22f61e93bcabae37f6e371156dece6c4be3459
Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
---
V2: - Add Makefile and linker script for the SH QSPI IO algorithm
    - Include the algorithm code instead of hard-coding it
Reviewed-on: http://openocd.zylin.com/5143
Tested-by: jenkins
Reviewed-by: Oleksij Rempel <linux@rempel-privat.de>
contrib/loaders/flash/sh_qspi/Makefile [new file with mode: 0644]
contrib/loaders/flash/sh_qspi/sh_qspi.S [new file with mode: 0644]
contrib/loaders/flash/sh_qspi/sh_qspi.inc [new file with mode: 0644]
contrib/loaders/flash/sh_qspi/sh_qspi.ld [new file with mode: 0644]
src/flash/nor/Makefile.am
src/flash/nor/drivers.c
src/flash/nor/sh_qspi.c [new file with mode: 0644]