
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&...
(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