Building for Raspberry Pi Ubuntu

Norman Feske norman.feske at ...1...
Mon Dec 2 11:50:38 CET 2013


Hi Nick,

on the Raspberry Pi, the network connector is attached to the SoC via a
network-over-USB solution, similar to the Pandaboard. Technically, the
network driver is already included in the current version of Genode. The
relevant commit is:


https://github.com/genodelabs/genode/commit/93c7e852e94a1fd0374b4da218461ace560e51a8

However, as stated in the commit message, even though the driver shows
some signs of life (e.g., some blinking LEDs), it remains largely
untested and might need some debugging. To give it a try, I recommend to
take the 'libports/run/lwip.run' script as starting point and follow the
way of how the script works for omap4 (Panda). I.e., take a close look
at the configuration of the USB driver.

That said, I am afraid that the current version of the USB driver will
not yield stellar networking performance. Because of the strange way of
how the DWC-OTG host controller works, there is an extremely high
interrupt load on the system (circa 8000 IRQs per second even when USB
is idle), draining the CPU. On Linux, the RPI developers came up with
pretty creative hacks to make the situation bearable, in particular
handling most of the interrupts via a FIQ handler and reflecting just a
few IRQs to the actual host-controller driver via the MPHI device.
Please have a look at the commit history for the driver [1] and the
explanation by one of the authors [2] - it is pretty insightful:

[1] https://github.com/nfeske/dwc_otg/commits/r1
[2] http://comments.gmane.org/gmane.linux.kernel.rpi/438

So far, the Genode version of the driver does not use those performance
optimizations.

Cheers
Norman


On 11/30/2013 01:51 PM, buzz heavyyear wrote:
> Actually, just one question ... Am I right in thinking that there are no
> Ethernet/nic drivers for  RPI in Genode?
> 
> Cheers
> Nick
> 
> --- Original Message ---
> 
> From: "buzz heavyyear" <buzzheavyyear at ...16...>
> Sent: 30 November 2013 11:59
> To: "genode-main-lists" <genode-main at lists.sourceforge.net>
> Subject: RE: Building for Raspberry Pi Ubuntu
> 
> Thanks Christian, looks like I'm going to have to start digging into
> RPi's drivers. Should be able to avoid dde_ipxe in that case.
> 
> Thanks again
> 
> Cheers
> Nick
> 
>> Subject: RE: Building for Raspberry Pi Ubuntu
>> From: christian.helmuth at ...1...
>> Date: Sat, 30 Nov 2013 12:50:49 +0100
>> To: genode-main at lists.sourceforge.net
>>
>> Hi,
>>
>> Seems you're missing the driver for RPi's NIC since such a driver is
> AFAIK not part of our repos. BTW dde_ipxe is only enabled for x86
> platforms with PCI networking hardware.
>>
>> Greets
>> --
>> Christian Helmuth
>> Genode Labs
>>
>> http://www.genode-labs.com/ · http://genode.org/ · /ˈdʒiː.nəʊd/
>>
>> Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
>> Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth

-- 
Dr.-Ing. Norman Feske
Genode Labs

http://www.genode-labs.com · http://genode.org

Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth




More information about the users mailing list