[i.MX53 QSB] Inter-component Shared Memory

Tiago Brito tb.genode at ...9...
Mon Jun 6 17:54:46 CEST 2016


Hi, I have an i.MX53 QSB and have been adapting the tz_vmm example for my
needs.

As said in previous posts I have a system call which is responsible for the
SMC between the normal world and tz_vmm. I can successfully allocate memory
in the normal world and access it in the secure world. Thus I can send
images to the secure world (which is what I want). Then in the secure world
I have a new component which uses the libpng port to process images.

TZ_VMM and the libpng component talk using the inter-component RPC. In
order to access the image inside the libpng component I send Genode::addr_t
in the RPC function call argument. This Genode::addr_t has the physicall
address of the image which was loaded to memory from Linux.

I can verify that the addr_t variable has the correct value inside the
libpng component, but when I try to access it this is the output:

[init -> tz_vmm] image addr: 816ac000
[init -> tz_vmm] RPC call: png_sig_cmp
[init -> libpng_server] image addr: 816ac000
no RM attachment (faulter 27213c with IP 700101d4 attempts to read from
address 816ac000)
init -> libpng_server -> ep: unresolved pagefault at ip=700101d4
sp=e01fee30 fault address=816ac000
core -> pager_ep: cannot submit unknown signal context

Since this is a memory block which was allocated by Linux, and since I can
manipulate it fine when inside tz_vmm, shouldn't I be able to manipulate
this same memory region without problems?

Thanks a lot! Tiago
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.genode.org/pipermail/users/attachments/20160606/674fec12/attachment.html>


More information about the users mailing list