at91 sama5d3 "regressions"

Peter Rosin peda at
Fri Sep 17 15:37:39 PDT 2021


I have old boards that I'm trying to get up to current
revisions of various pieces of software, and I'm running
into a couple of problems with barebox. After bisecting
and sorting though git history for a couple of days,
these are my findings...

1st problematic patch:

070de908da ("ARM: remove PBL_FORCE_PIGGYDATA_COPY")

This patch claims to remove an option, but it also kills a region
overlap test that I appear to need on my board. This gets further
complicated by patches
81ca755487 ("common.h: remove unused region_overlap()")
04e2aa516e ("common.h: move and rename lregion_overlap()")
that first removes the needed but unused function, and then
repurposes its name, and by patch
0be48260b8 ("ARM: Merge single pbl with multi pbl")
which merges the old single pbl function into the multi pbl case.

2nd problematic patch

3e4a040545 ("ARM: mmu: use client domain permissions to support ARMv7 eXecute Never")

This just doesn't work for my boards, and I need to revert it.

3rd problematic patch

c5d38e9201 ("lds: Add and use RO_DATA_SECTION macro")

Again, just doesn't work on my board. I'm doing a partial revert, but
that gets further complicated by patch
cd23b6facf ("common: add initial barebox deep-probe support")
which piles in one more entry in the non-functional RO_DATA_SECTION

I'm going to follow up with patches. I very much realize that
these patches are most likely not acceptable as-is, but I do
include them since they are probably the best description of
where the problems are.


Peter Rosin (4):
  common.h: reintroduce region_overlap() as old_region_overlap()
  ARM: copy data if there is a region overlap
  Revert "ARM: mmu: use client domain permissions to support ARMv7
    eXecute Never"
  lds: the RO_DATA_SECTION macro does not work on my SAMA5D3 board

 arch/arm/cpu/mmu-early.c     |  7 +------
 arch/arm/cpu/mmu.c           |  7 +------
 arch/arm/cpu/mmu.h           |  1 -
 arch/arm/cpu/uncompress.c    | 12 ++++++++++++
 arch/arm/lib32/ | 15 +++++++++++----
 include/common.h             | 14 ++++++++++++++
 6 files changed, 39 insertions(+), 17 deletions(-)


More information about the barebox mailing list