On 15/12/25 18:05, Alex Bennée wrote:
The TrustZone peripheral protection controller (tz-ppc) sits between
peripherals and the main system. However this results in "info mtree"
looking at bit confusing, especially as the sequence numbers can
overlap and miss steps:

       0000000000000000-ffffffffffffffff (prio -2, i/o): system
         0000000000000000-00000000003fffff (prio 0, i/o): tz-mpc-upstream
         0000000000400000-00000000007fffff (prio 0, i/o): alias ssram-0-alias 
@tz-mpc-upstream 0000000000000000-00000000003fffff
         0000000028000000-00000000281fffff (prio 0, i/o): tz-mpc-upstream
         0000000028200000-00000000283fffff (prio 0, i/o): tz-mpc-upstream
         0000000040080000-0000000040080fff (prio 0, i/o): iotkit-secctl-ns-regs
         0000000040100000-0000000040100fff (prio 0, i/o): tz-ppc-port[1]
         0000000040101000-0000000040101fff (prio 0, i/o): tz-ppc-port[2]
         0000000040102000-0000000040102fff (prio 0, i/o): tz-ppc-port[3]
         0000000040103000-0000000040103fff (prio 0, i/o): tz-ppc-port[4]
         0000000040110000-0000000040110fff (prio 0, i/o): tz-ppc-port[0]
         0000000040111000-0000000040111fff (prio 0, i/o): tz-ppc-port[1]
         0000000040112000-0000000040112fff (prio 0, i/o): tz-ppc-port[2]
         0000000040113000-0000000040113fff (prio 0, i/o): tz-ppc-port[3]
         0000000040200000-0000000040200fff (prio 0, i/o): tz-ppc-port[5]
         0000000040201000-0000000040201fff (prio 0, i/o): tz-ppc-port[6]
         0000000040202000-0000000040202fff (prio 0, i/o): tz-ppc-port[7]
         0000000040203000-0000000040203fff (prio 0, i/o): tz-ppc-port[8]
         0000000040204000-0000000040204fff (prio 0, i/o): tz-ppc-port[9]
         0000000040205000-0000000040205fff (prio 0, i/o): tz-ppc-port[0]
         0000000040206000-0000000040206fff (prio 0, i/o): tz-ppc-port[1]
         0000000040207000-0000000040207fff (prio 0, i/o): tz-ppc-port[10]
         0000000040208000-0000000040208fff (prio 0, i/o): tz-ppc-port[11]
         0000000040209000-0000000040209fff (prio 0, i/o): tz-ppc-port[2]
         000000004020a000-000000004020afff (prio 0, i/o): tz-ppc-port[3]
         000000004020b000-000000004020bfff (prio 0, i/o): tz-ppc-port[4]
         000000004020c000-000000004020cfff (prio 0, i/o): tz-ppc-port[12]
         000000004020d000-000000004020dfff (prio 0, i/o): tz-ppc-port[13]
         0000000040300000-0000000040300fff (prio 0, i/o): tz-ppc-port[0]
         0000000040301000-0000000040301fff (prio 0, i/o): tz-ppc-port[1]
         0000000040302000-0000000040302fff (prio 0, i/o): tz-ppc-port[2]
         0000000041000000-000000004113ffff (prio 0, i/o): tz-ppc-port[0]
         0000000042000000-00000000420000ff (prio 0, i/o): tz-ppc-port[5]
         0000000048007000-0000000048007fff (prio -1000, i/o): FPGA NS PC
         0000000050080000-0000000050080fff (prio 0, i/o): iotkit-secctl-s-regs
         0000000058007000-0000000058007fff (prio 0, i/o): tz-ppc-port[0]
         0000000058008000-0000000058008fff (prio 0, i/o): tz-ppc-port[1]
         0000000058009000-0000000058009fff (prio 0, i/o): tz-ppc-port[2]
         0000000080000000-0000000080ffffff (prio 0, ram): mps.ram

So as a quality of life feature lets expose the name of the underlying
region so we get something more useful:

     0000000000000000-ffffffffffffffff (prio -2, i/o): system
       0000000000000000-00000000003fffff (prio 0, i/o): tz-mpc-upstream
       0000000000400000-00000000007fffff (prio 0, i/o): alias ssram-0-alias 
@tz-mpc-upstream 0000000000000000-00000000003fffff
       0000000028000000-00000000281fffff (prio 0, i/o): tz-mpc-upstream
       0000000028200000-00000000283fffff (prio 0, i/o): tz-mpc-upstream
       0000000040080000-0000000040080fff (prio 0, i/o): iotkit-secctl-ns-regs
       0000000040100000-0000000040100fff (prio 0, i/o): tz-ppc-port[gpio0]
       0000000040101000-0000000040101fff (prio 0, i/o): tz-ppc-port[gpio1]
       0000000040102000-0000000040102fff (prio 0, i/o): tz-ppc-port[gpio2]
       0000000040103000-0000000040103fff (prio 0, i/o): tz-ppc-port[gpio3]
       0000000040110000-0000000040110fff (prio 0, i/o): tz-ppc-port[pl080]
       0000000040111000-0000000040111fff (prio 0, i/o): tz-ppc-port[pl080]
       0000000040112000-0000000040112fff (prio 0, i/o): tz-ppc-port[pl080]
       0000000040113000-0000000040113fff (prio 0, i/o): tz-ppc-port[pl080]
       0000000040200000-0000000040200fff (prio 0, i/o): tz-ppc-port[uart]
       0000000040201000-0000000040201fff (prio 0, i/o): tz-ppc-port[uart]
       0000000040202000-0000000040202fff (prio 0, i/o): tz-ppc-port[uart]
       0000000040203000-0000000040203fff (prio 0, i/o): tz-ppc-port[uart]
       0000000040204000-0000000040204fff (prio 0, i/o): tz-ppc-port[uart]
       0000000040205000-0000000040205fff (prio 0, i/o): tz-ppc-port[pl022]
       0000000040206000-0000000040206fff (prio 0, i/o): tz-ppc-port[pl022]
       0000000040207000-0000000040207fff (prio 0, i/o): 
tz-ppc-port[arm_sbcon_i2c]
       0000000040208000-0000000040208fff (prio 0, i/o): 
tz-ppc-port[arm_sbcon_i2c]
       0000000040209000-0000000040209fff (prio 0, i/o): tz-ppc-port[pl022]
       000000004020a000-000000004020afff (prio 0, i/o): tz-ppc-port[pl022]
       000000004020b000-000000004020bfff (prio 0, i/o): tz-ppc-port[pl022]
       000000004020c000-000000004020cfff (prio 0, i/o): 
tz-ppc-port[arm_sbcon_i2c]
       000000004020d000-000000004020dfff (prio 0, i/o): 
tz-ppc-port[arm_sbcon_i2c]
       0000000040300000-0000000040300fff (prio 0, i/o): tz-ppc-port[mps2-scc]
       0000000040301000-0000000040301fff (prio 0, i/o): tz-ppc-port[i2s-audio]
       0000000040302000-0000000040302fff (prio 0, i/o): tz-ppc-port[mps2-fpgaio]
       0000000041000000-000000004113ffff (prio 0, i/o): tz-ppc-port[gfx]
       0000000042000000-00000000420000ff (prio 0, i/o): 
tz-ppc-port[lan9118-mmio]
       0000000048007000-0000000048007fff (prio -1000, i/o): FPGA NS PC
       0000000050080000-0000000050080fff (prio 0, i/o): iotkit-secctl-s-regs
       0000000058007000-0000000058007fff (prio 0, i/o): tz-ppc-port[tz-mpc-regs]
       0000000058008000-0000000058008fff (prio 0, i/o): tz-ppc-port[tz-mpc-regs]
       0000000058009000-0000000058009fff (prio 0, i/o): tz-ppc-port[tz-mpc-regs]
       0000000080000000-0000000080ffffff (prio 0, ram): mps.ram

Signed-off-by: Alex Bennée <[email protected]>
Cc: Jim MacArthur <[email protected]>
---
  hw/misc/tz-ppc.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

Reviewed-by: Philippe Mathieu-Daudé <[email protected]>


Reply via email to