[U-Boot] [PATCH v3 0/8] tegra2: Implement SPI flash and saved environment

Simon Glass sjg at chromium.org
Sat Nov 5 15:46:43 CET 2011


Enable SPI flash on the Tegra2 Seaboard along with a saved 8KB environment.
This involves a few pieces:

- Tegra2 SPI driver
- Seaboard config changes
- a SPI / UART switch to handle switching between SPI and console UART

This series applies cleanly on top of Stephen Warren's latest patch series

http://patchwork.ozlabs.org/project/uboot/list/?submitter=Stephen+Warren&state=*&q=v7

(the first patch of which is already applied)

and also requires Stephen's GPIO fix.

http://patchwork.ozlabs.org/patch/118184/

Still to come are the NS16550 driver changes to cope with the pins
disappearing from under it. This patch series has been NAKed, the XON/XOFF
series won't really help and it isn't clear exactly what to do here. I
will return to this another day.

http://patchwork.ozlabs.org/patch/120013/

This patch series has been tested on Seaboard and other Tegra2 hardware.

Changes in v2:
- Update to support SPI mode and frequency
- Tidy driver according to comments, and tidy a little more
- Add CONFIG_SPI_FLASH_SIZE to define flash size
- Add config for SPI environment mode/speed
- Fix up GPIO selection to use gpio_request() first
- Rename uart-spi-fix to uart-spi-switch
- Rename uart/spi_enable() to pinmux_select_uart/spi()
- Add pinmux logic to SPI driver

Changes in v3:
- Remove the replaced bus/cs check function
- Change (bitlen & 7) to (bitlen % 8)
- Remove unneeded #includes and header file guard

Simon Glass (7):
  tegra2: Tidy UART selection
  tegra2: Add UARTB support
  tegra2: config: Enable SPI flash on Seaboard
  tegra2: Enable SPI environment on Seaboard
  tegra2: Implement SPI / UART GPIO switch
  tegra2: spi: Support SPI / UART switch
  tegra2: Plumb in SPI/UART switch code

Tom Warren (1):
  tegra2: spi: Add SPI driver for Tegra2 SOC

 arch/arm/include/asm/arch-tegra2/tegra2.h          |    1 +
 arch/arm/include/asm/arch-tegra2/tegra2_spi.h      |   76 ++++++
 arch/arm/include/asm/arch-tegra2/uart-spi-switch.h |   46 ++++
 board/nvidia/common/Makefile                       |   47 ++++
 board/nvidia/common/board.c                        |   79 ++++--
 board/nvidia/common/board.h                        |    1 +
 board/nvidia/common/uart-spi-switch.c              |  138 ++++++++++
 board/nvidia/seaboard/Makefile                     |    1 -
 board/nvidia/seaboard/seaboard.c                   |    3 +
 drivers/spi/Makefile                               |    1 +
 drivers/spi/tegra2_spi.c                           |  274 ++++++++++++++++++++
 include/configs/harmony.h                          |    3 +
 include/configs/seaboard.h                         |   20 ++
 include/configs/tegra2-common.h                    |    3 +-
 14 files changed, 667 insertions(+), 26 deletions(-)
 create mode 100644 arch/arm/include/asm/arch-tegra2/tegra2_spi.h
 create mode 100644 arch/arm/include/asm/arch-tegra2/uart-spi-switch.h
 create mode 100644 board/nvidia/common/Makefile
 create mode 100644 board/nvidia/common/uart-spi-switch.c
 create mode 100644 drivers/spi/tegra2_spi.c

-- 
1.7.3.1



More information about the U-Boot mailing list