coreboot/src/soc
Vadim Bendebury 4f064fdca5 spi: support controllers with limited transfer size capabilities
Some SPI controllers (like Imgtec Pistachio), have a hard limit on SPI
read and write transactions. Limiting transfer size in the wrapper
allows to provide the API user with unlimited transfer size
transactions.

The tranfer size limitation is added to the spi_slave structure, which
is set up by the controller driver. The value of zero in this field
means 'unlimited transfer size'. It will work with existion drivers,
as they all either keep structures in the bss segment, or initialize
them to all zeros.

This patch addresses the problem for reads only, as coreboot is not
expected to require to write long chunks into SPI devices.

BRANCH=none
BUG=chrome-os-partner:32441, chrome-os-partner:31438
TEST=set transfer size limit to artificially low value (4K) and
     observed proper operation on both Pistachio and ipq8086: both
     Storm and Urara booted through romstage and ramstage.

Change-Id: I9df24f302edc872bed991ea450c0af33a1c0ff7b
Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/232239
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: David Hendricks <dhendrix@chromium.org>
2014-12-03 05:03:05 +00:00
..
imgtec spi: support controllers with limited transfer size capabilities 2014-12-03 05:03:05 +00:00
intel Baytrail: Prior to PCI scan, wait for LCTL to be active in 50 ms 2014-12-03 00:10:39 +00:00
marvell arm: Redesign mainboard and SoC hooks for bootblock 2014-12-02 22:36:17 +00:00
nvidia arm: Add bootblock_mainboard_early_init() for pre-console initialization 2014-12-02 22:36:31 +00:00
qualcomm coreboot: Minor board ID changes 2014-10-25 00:00:13 +00:00
rockchip rk3288: Move UART initialization to bootblock_mainboard_early_init() 2014-12-02 22:36:37 +00:00
samsung arm: Redesign mainboard and SoC hooks for bootblock 2014-12-02 22:36:17 +00:00
Kconfig cosmos: add template for soc and board files 2014-10-09 20:44:46 +00:00
Makefile.inc cosmos: add template for soc and board files 2014-10-09 20:44:46 +00:00