coreboot-kgpe-d16/src/soc/rockchip/common
Simon Glass 03cd118025 rockchip: spi: Improve SPI read efficiency
The SPI driver is quite slow at reading data. For example, with a 24MHz
clock on gru it achieves a read speed of only 13.9Mbps.

We can correct this by reading the status registers once, then reading as
many bytes as are available before checking the status registers again. It
seems likely that a status register read requires synchronizing with the
SPI FIFO clock domain, which takes a while.

BUG=chrome-os-partner:56556
BRANCH=none
TEST=run on gru and see the speed increase from 13.920 Mbps to 24.712 Mbps

Change-Id: I24aed0c9c6c5445634c4e056922afaee4e9a7b33
Signed-off-by: Martin Roth <martinroth@chromium.org>
Original-Commit-Id: 49c2fc20d7d7d703763e9b0a6f68313a349a84b9
Original-Change-Id: I42745f01f0fe069f6ae26d866004d36bb257e6b2
Original-Signed-off-by: Simon Glass <sjg@chromium.org>
Original-Reviewed-on: https://chromium-review.googlesource.com/376945
Original-Reviewed-by: Julius Werner <jwerner@chromium.org>
Reviewed-on: https://review.coreboot.org/16582
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2016-09-20 21:51:42 +02:00
..
include/soc rockchip: spi: Improve SPI read efficiency 2016-09-20 21:51:42 +02:00
cbmem.c rockchip: make sure sdram top does not spill into MMIO space 2016-05-09 08:45:35 +02:00
edp.c rockchip/*: refactor edp driver 2016-05-09 08:48:35 +02:00
gpio.c rockchip/rk3399: Fix pinctrl pull bias settings 2016-07-12 00:28:33 +02:00
i2c.c
pwm.c rockchip/rk3288: refactor pwm driver 2016-04-13 23:38:50 +02:00
rk808.c rockchip/common: Set weekday to unknown in rtc_get() 2016-08-10 23:11:22 +02:00
spi.c rockchip: spi: Improve SPI read efficiency 2016-09-20 21:51:42 +02:00
uart.c rockchip/rk*: replace UART special snowflake with standard driver 2016-05-09 08:38:25 +02:00
vop.c rockchip: move vop driver from rk3288 to rockchip common 2016-05-09 08:51:06 +02:00