USB in Genode 18.08

Stefan Kalkowski stefan.kalkowski at genode-labs.com
Thu Sep 20 07:48:38 CEST 2018


Hi Edward,

On Mon, Sep 17, 2018 at 12:16:44PM -0500, Edward Sandberg wrote:
> I was very excited to see that the 18.08 release notes indicated that
> the USB driver is available for the Wandboard Quad.  Unfortunately my
> testing has not been successful yet. I can build run/usb_hid with the
> seL4 kernel but at boot time I see:
> 
> Genode 18.08
> 455 MiB RAM and 31767 caps assigned to init
> Warning: void Genode::Rpc_cap_factory::free(Genode::Native_capability)
> not implemented - resources leaked: 0x1
> Warning: void Genode::Rpc_cap_factory::free(Genode::Native_capability)
> not implemented - resources leaked: 0x2
> Warning: void Genode::Rpc_cap_factory::free(Genode::Native_capability)
> not implemented - resources leaked: 0x4
> [init -> usb_hid_drv] --- USB HID input driver ---
> 
> Warning: void Genode::Rpc_cap_factory::free(Genode::Native_capability)
> not implemented - resources leaked: 0x8
> [init -> usb_hid_drv] Warning: use compatibility mode: will claim all
> HID devices from USB report
> [init -> usb_hid_drv] Configured HID screen with 0x0 (multitouch=false)
> 
> Warning: PD (init -> gpio_drv) cap limit (used=25, limit=25) exceeded
> during transfer_quota(3)
> [init -> gpio_drv] resource_request: cap_quota=3
> 
> [init] child "gpio_drv" requests resources: cap_quota=3

actually, the GPIO driver is not needed for this test on Wandboard,
but other i.MX6 platforms. Nevertheless, to circumvent this warning
and to be sure it has nothing to do with the GPIO driver, you should
increase the cap_quota for the GPIO driver so that it will initialize
completely. Please, apply the following patch:

diff --git a/repos/dde_linux/run/usb_hid.run
b/repos/dde_linux/run/usb_hid.run
index fea02ab98..5af7dcb4f 100644
--- a/repos/dde_linux/run/usb_hid.run
+++ b/repos/dde_linux/run/usb_hid.run
@@ -102,7 +102,7 @@ append config {
 	<default caps="100"/>}
 
 append_if [have_spec gpio] config "
-config<start name=\"[gpio_drv]\">
+gpio_drv<start name=\"[gpio_drv]\" caps=\"140\">
 		<resource name=\"RAM\" quantum=\"4M\"/>
 		<provides><service name=\"Gpio\"/></provides>
 		<config/>

> Warning: void Genode::Rpc_cap_factory::free(Genode::Native_capability)
> not implemented - resources leaked: 0x10
> [init -> usb_drv] dev_info: EHCI Host Controller
> 
> [init -> usb_drv] dev_info: new USB bus registered, assigned bus number 1
> [init -> usb_drv] dev_info: USB 2.0 started, EHCI 1.00
> Warning: mapping failed 0x2dc03000 -> 0x10003000
> Warning: mapping failed 0x2dc03000 -> 0x10003000
> [init -> test-input] --- Input test ---
> Warning: mapping failed 0x2dc03000 -> 0x10003000
> 

Anyway, here lied the actual problem. I cannot say why core resp. the
sel4 kernel complains to map that memory pages here. Unfortunately,
I'm on the way, and cannot test sel4 on Wandboard right now. Maybe
Alexander Böttcher has some idea what possibly goes wrong, when core
complains that it cannot map?

Regards
Stefan

> and that last line repeats indefinitely. I cannot find either of those
> addresses anywhere in the code so it is unclear to me what the problem is.
> 
> -- 
> Edward Sandberg
> Adventium Labs
> 111 3rd Avenue S. Suite #100
> Minneapolis, MN 55401
> ed.sandberg at adventiumlabs.com
> 
> 
> 
> _______________________________________________
> Genode users mailing list
> users at lists.genode.org
> https://lists.genode.org/listinfo/users

-- 
Stefan Kalkowski
Genode labs

https://github.com.skalk | https://genode.org



More information about the users mailing list