Hey Fabrizio?, I'm sorry we took so long to get back to you:

The underlying problem here is that we haven't yet finished defining and 
implementing a driver framework for our userspace code, so in order to satisfy 
dependencies, we began stuffing them into the io_ops struct. So since lots of 
devices depend on an initialized mux driver, what you see here is the result of 
that, unfortunately -- the good news is that we're currently defining a driver 
framework internally 
(https://docs.sel4.systems/seL4DriverAPI/ChildEnumeration.html is one of the 
draft pages of documentation -- but none of this is finalized) over the course 
of this year.


What I'd recommend is that you use the helper function, mux_sys_valid() in 
mux.h 
(https://github.com/seL4/util_libs/blob/master/libplatsupport/arch_include/arm/platsupport/mux.h#L35)
 inside of the ethernet driver, and map the whole 16K range inside of the 
IO-Ops initializer -- essentially what's going on there is that there's a 
dependency on the mux driver that's satisfied by the IO-Ops object.


Thanks very much for your patience,? and this sort of thing should be cleaned 
up soon.


Yours truly,

--
Kofi Doku Atuah
Kernel engineer
DATA61 | CSIRO

_______________________________________________
Devel mailing list
Devel@sel4.systems
https://sel4.systems/lists/listinfo/devel

Reply via email to