Hi Peter,
On 5/10/21 9:08 PM, Peter Maydell wrote:
> This patchset fixes some bugs in how we were modelling the
> TCMs and the SRAM in the SSE-300 which were preventing
> Arm TF-M from booting on our AN547 model; there are also
> some fixes to things I noticed while I was in the code.
>
> The specific bugs preventing boot were:
> * SRAM_ADDR_WIDTH for the AN547 is 21, not 15, so the SRAM
> area was too small
> * we were putting the SRAMs at the wrong address (0x2100_0000
> for SSE-300, not 0x2000_0000 as for SSE-200)
How can we test it?
> The other stuff I've fixed is:
> * we were modelling the SRAM in the AN524 both in the SSE
> and in the board model (harmlessly, as the board-model
> memory was just always shadowed in the memory map and
> unreachable)
> * we were modelling the TCMs in the AN547 board model,
> which is conceptually wrong because in hardware they're
> part of the SSE-300. No guest-visible change, but it will
> avoid problems if/when we add another SSE-300 board model
>
> thanks
> -- PMM
>
> Peter Maydell (6):
> hw/arm/mps2-tz: Don't duplicate modelling of SRAM in AN524
> hw/arm/mps2-tz: Make SRAM_ADDR_WIDTH board-specific
> hw/arm/armsse.c: Correct modelling of SSE-300 internal SRAMs
> hw/arm/armsse: Convert armsse_realize() to use ERRP_GUARD
> hw/arm/mps2-tz: Allow board to specify a boot RAM size
> hw/arm: Model TCMs in the SSE-300, not the AN547
>
> include/hw/arm/armsse.h | 2 ++
> hw/arm/armsse.c | 35 +++++++++++++++++++++++++++++------
> hw/arm/mps2-tz.c | 39 ++++++++++++++++++++-------------------
> 3 files changed, 51 insertions(+), 25 deletions(-)
>