Am 21.12.2018 um 12:11 schrieb Vignesh R:
Hi Simon,
[...]
Hi Vignesh,
I just did a quick test on this but it fails to boot. I guess this could
be a size problem.
I guess. SPL_SPI_FLASH_TINY would help with SPL size issue here.
Yes, after enabling that it works. With the tiny framework, I get
~1.5KiB reduction compared to current mainline.
Unfortunately, the socfpga gen5 config does not
correctly check SPL size currently. I'll have to work on that. I'll test
your patch with a more limited config when I find the time.
Okay, thanks!
I can successfully boot with your v2 patch applied with the standard and
the tiny framework. However, allow me some more time to check SFDP (and
maybe BAR) and also to check that the correct opcodes are used
(stateless 4-byte opcodes should be used).
Regards,
Simon
Regards
Vignesh
Regards,
Simon
Change log:
Since v1:
Remove #ifindef __UBOOT__
Add back BAR support, but dont enable as default for all platform (see
10/11 for more details)
Enable SPI_FLASH_TINY on boards where there is SPL size constraint as
seen on travis ci builds.
Drop sf_mtd changes for now as it seems to cause issues.
v1: https://patchwork.ozlabs.org/cover/1012146/
Since RFC v2:
Fix issues reported by Simon Goldschmidt wrt 4 use of byte
addressing opcode
Fix issues in compiling SFDP code
Re organize file names and Makefile to simply spi-nor-tiny inclusion
Remove SPI_FLASH_BAR and SF_DUAL_FLASH as these are no longer used
RFC v2: https://patchwork.ozlabs.org/cover/1007589/
Since RFC v1:
Add lightweight SPI flash stack for boards with SPL size constraints
Provide non DM version of spi-mem
Fix build issues on different platforms as reported by travis-ci on v1
RFC v1: https://patchwork.ozlabs.org/cover/1004689/
Vignesh R (11):
spi-mem: Claim SPI bus before spi mem access
spi: Add non DM version of SPI_MEM
sh: bitops: add hweight*() macros
mtd: spi: Port SPI NOR framework from Linux
mtd: spi: Switch to new SPI NOR framework
mtd: spi: Remove unused files
mtd: spi: Add lightweight SPI flash stack for SPL
configs: Enable SPI_FLASH_TINY for resource constrained boards
configs: Remove SF_DUAL_FLASH
configs: Don't use SPI_FLASH_BAR as default
MAINTAINERS: Add an entry for SPI NOR
MAINTAINERS | 9 +
arch/arm/mach-omap2/am33xx/Kconfig | 1 -
arch/sh/include/asm/bitops.h | 4 +
common/spl/Kconfig | 21 +-
configs/alt_defconfig | 1 -
configs/am57xx_evm_defconfig | 1 -
configs/am57xx_hs_evm_defconfig | 1 -
configs/ap121_defconfig | 1 -
configs/ap143_defconfig | 1 -
configs/avnet_ultra96_rev1_defconfig | 1 -
configs/axm_defconfig | 1 +
configs/axs101_defconfig | 1 -
configs/axs103_defconfig | 1 -
configs/bg0900_defconfig | 1 -
configs/blanche_defconfig | 1 -
configs/cl-som-am57x_defconfig | 1 -
configs/clearfog_defconfig | 1 -
configs/cm_t43_defconfig | 1 -
configs/da850_am18xxevm_defconfig | 1 +
configs/da850evm_nand_defconfig | 2 +-
configs/db-88f6820-amc_defconfig | 1 -
configs/db-88f6820-gp_defconfig | 1 +
configs/display5_defconfig | 1 -
configs/display5_factory_defconfig | 1 -
configs/dra7xx_evm_defconfig | 1 -
configs/dra7xx_hs_evm_defconfig | 1 -
configs/ds109_defconfig | 1 -
configs/ds414_defconfig | 1 -
configs/evb-rv1108_defconfig | 1 -
configs/gose_defconfig | 1 -
configs/helios4_defconfig | 1 -
configs/k2g_evm_defconfig | 1 -
configs/k2g_hs_evm_defconfig | 1 -
configs/koelsch_defconfig | 1 -
configs/lager_defconfig | 1 -
configs/maxbcm_defconfig | 1 -
configs/mt7629_rfb_defconfig | 1 -
configs/mx6sxsabreauto_defconfig | 1 -
configs/mx6sxsabresd_defconfig | 1 -
configs/mx6ul_14x14_evk_defconfig | 1 -
configs/mx6ul_9x9_evk_defconfig | 1 -
configs/mx6ull_14x14_evk_defconfig | 1 -
configs/mx6ull_14x14_evk_plugin_defconfig | 1 -
configs/mx7dsabresd_qspi_defconfig | 1 -
configs/porter_defconfig | 2 +-
configs/r8a77970_eagle_defconfig | 1 -
configs/silk_defconfig | 1 -
configs/socfpga_arria5_defconfig | 1 -
configs/socfpga_cyclone5_defconfig | 1 -
configs/socfpga_is1_defconfig | 1 -
configs/socfpga_sockit_defconfig | 1 -
configs/socfpga_socrates_defconfig | 1 -
configs/socfpga_sr1500_defconfig | 1 -
configs/socfpga_stratix10_defconfig | 1 -
configs/stout_defconfig | 2 +-
configs/taurus_defconfig | 3 +-
configs/topic_miami_defconfig | 1 -
configs/topic_miamilite_defconfig | 2 -
configs/topic_miamiplus_defconfig | 2 -
configs/turris_omnia_defconfig | 2 +-
configs/xilinx_versal_virt_defconfig | 1 -
configs/xilinx_zynqmp_mini_qspi_defconfig | 2 -
configs/xilinx_zynqmp_zc1232_revA_defconfig | 2 -
configs/xilinx_zynqmp_zc1254_revA_defconfig | 2 -
configs/xilinx_zynqmp_zc1275_revA_defconfig | 2 -
configs/xilinx_zynqmp_zc1275_revB_defconfig | 2 -
.../xilinx_zynqmp_zc1751_xm015_dc1_defconfig | 1 -
.../xilinx_zynqmp_zc1751_xm016_dc2_defconfig | 1 -
.../xilinx_zynqmp_zc1751_xm018_dc4_defconfig | 1 -
configs/xilinx_zynqmp_zcu100_revC_defconfig | 1 -
configs/xilinx_zynqmp_zcu102_rev1_0_defconfig | 1 -
configs/xilinx_zynqmp_zcu102_revA_defconfig | 1 -
configs/xilinx_zynqmp_zcu102_revB_defconfig | 1 -
configs/xilinx_zynqmp_zcu104_revA_defconfig | 2 -
configs/xilinx_zynqmp_zcu104_revC_defconfig | 2 -
configs/xilinx_zynqmp_zcu106_revA_defconfig | 2 -
configs/xilinx_zynqmp_zcu111_revA_defconfig | 1 -
configs/zynq_cc108_defconfig | 1 -
configs/zynq_cse_qspi_defconfig | 1 -
configs/zynq_dlc20_rev1_0_defconfig | 1 -
configs/zynq_microzed_defconfig | 1 -
configs/zynq_minized_defconfig | 1 -
configs/zynq_z_turn_defconfig | 1 -
configs/zynq_zc702_defconfig | 1 -
configs/zynq_zc706_defconfig | 1 -
configs/zynq_zc770_xm010_defconfig | 1 -
configs/zynq_zc770_xm013_defconfig | 1 -
configs/zynq_zed_defconfig | 1 -
configs/zynq_zybo_defconfig | 1 -
configs/zynq_zybo_z7_defconfig | 1 -
doc/SPI/README.dual-flash | 92 -
doc/SPI/README.ti_qspi_dra_test | 1 -
drivers/mtd/spi/Kconfig | 16 +-
drivers/mtd/spi/Makefile | 12 +-
drivers/mtd/spi/sandbox.c | 36 +-
drivers/mtd/spi/sf_dataflash.c | 11 +-
drivers/mtd/spi/sf_internal.h | 225 +-
drivers/mtd/spi/sf_probe.c | 33 +-
drivers/mtd/spi/spi-nor-core.c | 2432 +++++++++++++++++
drivers/mtd/spi/spi-nor-ids.c | 297 ++
drivers/mtd/spi/spi-nor-tiny.c | 810 ++++++
drivers/mtd/spi/spi_flash.c | 1337 ---------
drivers/mtd/spi/spi_flash_ids.c | 211 --
drivers/spi/Kconfig | 9 +-
drivers/spi/Makefile | 1 +
drivers/spi/spi-mem-nodm.c | 89 +
drivers/spi/spi-mem.c | 6 +
drivers/spi/stm32_qspi.c | 4 +-
include/configs/T102xQDS.h | 1 -
include/configs/T102xRDB.h | 1 -
include/configs/T104xRDB.h | 1 -
include/configs/T208xQDS.h | 1 -
include/configs/T208xRDB.h | 1 -
include/configs/gw_ventana.h | 1 -
include/configs/km/kmp204x-common.h | 1 -
include/configs/ls1021aiot.h | 1 -
include/configs/socfpga_stratix10_socdk.h | 1 -
include/linux/mtd/cfi.h | 32 +
include/linux/mtd/spi-nor.h | 419 +++
include/spi_flash.h | 105 +-
120 files changed, 4266 insertions(+), 2058 deletions(-)
delete mode 100644 doc/SPI/README.dual-flash
create mode 100644 drivers/mtd/spi/spi-nor-core.c
create mode 100644 drivers/mtd/spi/spi-nor-ids.c
create mode 100644 drivers/mtd/spi/spi-nor-tiny.c
delete mode 100644 drivers/mtd/spi/spi_flash.c
delete mode 100644 drivers/mtd/spi/spi_flash_ids.c
create mode 100644 drivers/spi/spi-mem-nodm.c
create mode 100644 include/linux/mtd/cfi.h
create mode 100644 include/linux/mtd/spi-nor.h
--
2.20.1
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot