[U-Boot] [PATCH 0/3] vexpress64 flash support
Ryan Harkin
ryan.harkin at linaro.org
Wed Oct 21 11:54:04 CEST 2015
Whilst adding NOR support for Juno and FVP models, I encountered a
problem in cfi_flash.c. It is using "unsigned long" to represent a
32-bit value. This does not work on 64-bit systems such as vexpress64.
I fixed it up in patch 1/3, however, I'm not convinced that my mod is
the correct one. I'd appreciate some help with that one and will respin
after feedback.
Patch 2/3 may also be unsuitable. Once I'd added the CFI flash support,
the build failed because tools/envcrc.c includes include/config.h, which
in turn includes include/configs/vexpress_aemv8a.h, but without a board
defined. Perhaps there is something missing from the global config that
means the #errors should not be triggered? Again, feedback would be
appreciated here.
The last patch relies on the two previous ones to build and work
successfully. I believe it to be the correct approach but welcome
suggested improvements.
I tested it on Juno R0, R1 and FVP AEMv8 models version "Fast Models
[0.8.6302 (Feb 4 2015)]". I also tested on Foundation Model version
"ARM V8 Foundation Model r0p0 (model build 9.2.28)", where it failed
gracefully.
[PATCH 1/3] cfi_flash: use specific length types for cword
[PATCH 2/3] vexpress64: remove #error
[PATCH 3/3] vexpress64: store env in flash
configs/vexpress_aemv8a_dram_defconfig | 1 +
configs/vexpress_aemv8a_semi_defconfig | 1 +
drivers/mtd/cfi_flash.c | 4 ++--
include/configs/vexpress_aemv8a.h | 43 +++++++++++++++++++++++--------------------
include/mtd/cfi_flash.h | 8 ++++----
5 files changed, 31 insertions(+), 26 deletions(-)
This series is also available in a public GIT tree:
https://git.linaro.org/landing-teams/working/arm/u-boot.git/shortlog/refs/tags/vexpress64-nor-upstream-v1
More information about the U-Boot
mailing list