[U-Boot] [PATCH 0/8] rockchip: Improve SPI-NOR read performance for the RK3399-Q7
Philipp Tomsich
philipp.tomsich at theobroma-systems.com
Sun Feb 3 15:17:25 UTC 2019
The SPI-NOR driver has traditionally been slow enough to impact
boot-time from SPI-NOR (which is the recommended storage for
u-boot.itb on the RK3399-Q7): transfer for the ~890KB exceeded 0.8s
even though the SPI-NOR bitrate was configured to 49.5MBit/s.
This series provides some urgently needed tough love for the SPI
driver:
- contains a few cleanups
- implements a new 16bit-wide transfer mode to better utilise the
32x16bit RXFIFO
- increases bus-utilisation to > 94% both for 49.5MBit/s (and, in an
experimental branch that allows higher bitrates) for 74.25MBit/s
With the entire series applied, we can now load our u-boot.itb in
~0.095s (instead of ~ 0.820s previously). This is still slower than
from the on-module eMMC (0.028s) that has an 8-bit wide data-path, yet
makes the SPI-NOR finally useful for all customers that want to keep
the boot firmware out-of-the-way of the operating system.
Philipp Tomsich (8):
rockchip: spi: add debug message for delay in CS toggle
rockchip: spi: remove unused code and fields in priv
rockchip: spi: fix off-by-one in chunk size computation
rockchip: spi: consistently use false/true with rkspi_enable_chip
rockchip: spi: only wait for completion, if transmitting
rockchip: spi: add optimised receive-only implementation
rockchip: spi: add driver-data and a 'rxonly_manages_fifo' flag
rockchip: spi: make optimised receive-handler unaligned-safe
drivers/spi/rk_spi.c | 163 +++++++++++++++++++++++++++++++++++++++------------
1 file changed, 127 insertions(+), 36 deletions(-)
--
2.1.4
More information about the U-Boot
mailing list