Hi all,

I am working on i.MX6 Sabre Lite board. Total ram available in this board
is 1GB (0x10000000-0x50000000). To demonstrate TrustZone,  i tried to run
tz_vmm with Genode in Normal world also. So i divide the available RAM as
secure (0x10000000-0x30000000) and normal (0x30000000-0x50000000).

On the normal world  ram, secure world also have the access which is
programmed in tzasc (tsc_380.h) driver. I tried to access normal world
region (0x40000000) through IO_MEM from the secure world but when i am
trying to create the iomem object for 0x40000000 region in tz_vmm. It gives
me the following fault.

I/O memory [40000000,50000000) not available
Local MMIO mapping failed!
[init -> tz_vmm] C++ runtime: Genode::Parent::Service_denied

I have included this region in mmio_regions inside the platform_support.cc
also. What could be the reason for this fault. ?

Log :

Starting kernel ...

kernel initialized
Core virtual memory allocator
---------------------
Allocator 10135250 dump:
 Block: [00001000,00002000) size=00001000 avail=00000000 max_avail=00000000
 Block: [00002000,00003000) size=00001000 avail=00000000 max_avail=00000000
 Block: [00003000,00004000) size=00001000 avail=00000000 max_avail=ef832000
 Block: [00004000,00005000) size=00001000 avail=00000000 max_avail=00000000
 Block: [00005000,00006000) size=00001000 avail=00000000 max_avail=ef832000
 Block: [00006000,00007000) size=00001000 avail=00000000 max_avail=00000000
 Block: [00007000,10001000) size=0fffa000 avail=0fffa000 max_avail=ef832000
 Block: [107be000,ffff0000) size=ef832000 avail=ef832000 max_avail=ef832000
 => mem_size=4286783488 (4088 MB) / mem_avail=4286758912 (4088 MB)

RAM memory allocator
---------------------
Allocator 101341f4 dump:
 Block: [10000000,10001000) size=00001000 avail=00000000 max_avail=00000000
 Block: [107be000,107bf000) size=00001000 avail=00000000 max_avail=00000000
 Block: [107bf000,107c0000) size=00001000 avail=00000000 max_avail=00000000
 Block: [107c0000,107c1000) size=00001000 avail=00000000 max_avail=0f83d000
 Block: [107c1000,107c2000) size=00001000 avail=00000000 max_avail=00000000
 Block: [107c2000,107c3000) size=00001000 avail=00000000 max_avail=0f83d000
 Block: [107c3000,20000000) size=0f83d000 avail=0f83d000 max_avail=0f83d000
 => mem_size=260321280 (248 MB) / mem_avail=260296704 (248 MB)

IO memory allocator
-------------------
Allocator 101362b8 dump:
 Block: [00000000,10000000) size=10000000 avail=10000000 max_avail=20000000
 Block: [30000000,50000000) size=20000000 avail=20000000 max_avail=20000000
 => mem_size=805306368 (768 MB) / mem_avail=805306368 (768 MB)

IRQ allocator
-------------------
Allocator 10137314 dump:
 Block: [00000000,00000400) size=00000400 avail=00000400 max_avail=00000400
 => mem_size=1024 (0 MB) / mem_avail=1024 (0 MB)

Genode 15.02
int main(): --- create local services ---
int main(): --- start init ---
:
:
[init] child "tz_vmm"
[init]   RAM quota:  3932160
[init]   ELF binary: tz_vmm
[init]   priority:   0
I/O memory [40000000,50000000) not available
Local MMIO mapping failed!
[init -> tz_vmm] C++ runtime: Genode::Parent::Service_denied
[init -> tz_vmm] void* abort(): abort called


Regards

Chirag Garg
IIT Madras , Rise Lab
------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
genode-main mailing list
genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main

Reply via email to