[U-Boot] [PATCH v2 00/10] sf: Add support for extended/quad read and write commands
Jagannadha Sutradharudu Teki
jagannadha.sutradharudu-teki at xilinx.com
Wed Aug 7 22:09:33 CEST 2013
This is v2 series for past read/write instruction support.
this series also includes zynq qspi driver patch set for knowing
usage of these extended/quad read and write commnads.
http://comments.gmane.org/gmane.comp.boot-loaders.u-boot/150148
http://permalink.gmane.org/gmane.comp.boot-loaders.u-boot/167026
There is a bit discussion going on for supporting this:
http://u-boot.10912.n7.nabble.com/PATCH-00-12-cmd-sf-Add-support-for-read-and-write-instructions-td143749.html
This patchset adds support for extended and quad read and write commands support.
It's been long back the actual idea came up, but i feel right now the sf framework
is pretty nice to add these kinds of add ons.
Concept:
Initially I tried to add individual sf write/read commands to respective
flash read/write commands, but later some discussion to mainline about this and
changed the implementation.
As Michal and me were trying to change this as like the
"implementation will discover the fastest command by taking the supported
commands from flash and a controller. Controller supported commands will always been a priority."
Means I have added rd_cmd and wr_cmd params on spi_flash_id_params table.
So the flash user may fill these with flash supported commands, and also spi controller
use is also have rd_cmd and wr_cmd from spi.h, so the spi user will fill these with
controller supported commands. and the resultent command is calculated based fastest
commands by taking inputs from spi and flash, but spi(controller) has always a priority.
Supported commands:
- CMD_READ_ARRAY_SLOW
- CMD_READ_ARRAY_FAST
- CMD_READ_DUAL_OUTPUT_FAST
- CMD_READ_DUAL_IO_FAST
- CMD_READ_QUAD_OUTPUT_FAST
- CMD_PAGE_PROGRAM
- CMD_QUAD_PAGE_PROGRAM
REQUEST FOR ALL SPI CODE CONTRIBUTORS/USERS, PLEASE TEST THESE CHANGES
W.R.T YOUR HW IF POSSIBLE.
Please let me know for any issues/concerns/questions.
--
Thanks,
Jagan.
Jagannadha Sutradharudu Teki (10):
sf: Remove spi_flash_do_alloc references
sf: Add extended read commands support
sf: Add quad read/write commands support
sf: ops: Add configuration register writing support
sf: Set quad enable bit support
spi: Add zynq qspi controller driver
zynq: Enable CONFIG_ZYNQ_QSPI
zynq: Define CONFIG_SPI_FLASH_BAR
spi: zynq_qspi: Add quad read/write commands support
spi: zynq_qspi: Enable READ_CMD_FULL and WRITE_CMD_FULL
arch/arm/include/asm/arch-zynq/hardware.h | 1 +
drivers/mtd/spi/spi_flash_internal.h | 8 +
drivers/mtd/spi/spi_flash_ops.c | 52 +++-
drivers/mtd/spi/spi_flash_probe.c | 190 ++++++++-----
drivers/spi/Makefile | 1 +
drivers/spi/spi.c | 3 +
drivers/spi/zynq_qspi.c | 454 ++++++++++++++++++++++++++++++
include/configs/zynq.h | 11 +
include/spi.h | 4 +
include/spi_flash.h | 84 +++---
10 files changed, 690 insertions(+), 118 deletions(-)
create mode 100644 drivers/spi/zynq_qspi.c
--
1.8.3
More information about the U-Boot
mailing list