Hello
I'm trying to implement a iomux for the hw_rpi platform.
Looking at the iomux.h file in the imx53 platform I created the following class for the RPI
class Iomux : public Genode::Attached_io_mem_dataspace, Genode::Mmio { public: Iomux() : Genode::Attached_io_mem_dataspace(Genode::Board_base::IOMUXC_BASE, Genode::Board_base::IOMUXC_SIZE), Genode::Mmio((Genode::addr_t)local_addr<void>()) { } } };
/* I/O mux registers */ IOMUXC_BASE = 0x7e200000, IOMUXC_SIZE = 0x00610000,
when I start the new image I get the following output on the serial console of the kernel:
kernel initialized Genode 15.05-14-gf182c88 <local changes> int main(): --- create local services --- int main(): --- start init --- int main(): transferred 247 MB to init int main(): --- init created, waiting for exit condition --- [init] Could not open ROM session for module "ld.lib.so" Quota exceeded! amount=12288, size=12288, consumed=12288 [init -> fb_drv] --- fb_drv started --- [init -> platform_drv] --- Raspberry Pi platform driver --- I/O memory [7e200000,7e810000) not available Local MMIO mapping failed! [init -> platform_drv] void* abort(): abort called ...
Do I need to set a policy to access the MMIO range?
The code can be found here: https://github.com/trimpim/genode/tree/issue1549
Best regards Pirmin