Help accessing physical address on zynq7000
Hello, I've been getting started with seL4 on the zynq7000 and I am looking for resources on how to read/write physical memory for memory mapped io purposes. If there is a relevant tutorial or manual to reference I haven't come across it yet so I wanted to ask here. Any other guidance as to how to think about and work with capabilities would be useful at this stage. I'm working with a modified version of the sel4test repository. Looking at that I found env.simple (simple_t defined https://github.com/seL4/seL4_libs/blob/a1c031b0885dec4ddf1ee1f8866bcd23dcca6 ac3/libsel4simple/include/simple/simple.h) which seems to contain function pointers for some relevant functions to what I'm trying to do, but I am not entirely sure how to go about using them. What needs to be initialized first and how do I go about that? Any guidance greatly appreciated, Thanks. Jeff Brandon Associate Staff MIT Lincoln Laboratory 05-53 Secure Resilient Systems and Technology Ph: 781.981.9233
Hi Brandon, The seL4test project has some example code for setting up these frameworks. Initialise 'simple' - and abstraction for the boot information that seL4 provides to the initial thread: https://github.com/seL4/sel4test/blob/master/apps/sel4test-driver/src/main.c... Configure a kernel object manager: https://github.com/seL4/sel4test/blob/master/apps/sel4test-driver/src/main.c... Initialise an abstract vka interface for allocating objects: https://github.com/seL4/sel4test/blob/master/apps/sel4test-driver/src/main.c... Initialise a vspace - a user-space virtual memory manager: https://github.com/seL4/sel4test/blob/master/apps/sel4test-driver/src/main.c... From there, you can initialise an IO mapper for trivially mapping your physical memory to a virtual address: https://github.com/seL4/seL4_libs/blob/master/libsel4platsupport/include/sel... Last, use this function for mapping the physical memory. https://github.com/seL4/util_libs/blob/master/libplatsupport/include/platsup... - AlexK On Mon, 2017-03-20 at 19:31 +0000, Brandon, Jeffrey - 0553 - MITLL wrote:
Hello,
I’ve been getting started with seL4 on the zynq7000 and I am looking for resources on how to read/write physical memory for memory mapped io purposes.
If there is a relevant tutorial or manual to reference I haven’t come across it yet so I wanted to ask here. Any other guidance as to how to think about and work with capabilities would be useful at this stage.
I’m working with a modified version of the sel4test repository. Looking at that I found env.simple (simple_t defined https://github.com/seL4/seL4_libs/blob/a1c031b0885dec4ddf1ee1f8866bcd23dcca6...) which seems to contain function pointers for some relevant functions to what I’m trying to do, but I am not entirely sure how to go about using them. What needs to be initialized first and how do I go about that?
Any guidance greatly appreciated,
Thanks.
Jeff Brandon
Associate Staff
MIT Lincoln Laboratory
05-53 Secure Resilient Systems and Technology
Ph: 781.981.9233
_______________________________________________ Devel mailing list Devel@sel4.systems https://sel4.systems/lists/listinfo/devel
participants (2)
-
Alexander.Kroh@data61.csiro.au
-
Brandon, Jeffrey - 0553 - MITLL