[Cerowrt-devel] Raspberry Pi build
dave.taht at gmail.com
Sat Aug 18 14:53:06 EDT 2012
On Sat, Aug 18, 2012 at 11:07 AM, Robert Bradley
<robert.bradley1 at gmail.com> wrote:
> On 18/08/12 18:38, Dave Taht wrote:
>> 2) I have no idea what wireless chip is in the pi, nor its current state.
> The Raspberry Pi has no built-in wireless chip, but using USB WiFi adapters
> would be possible.
>> 3) In order for things like fq_codel to have a hope of working well at
>> the ethernet level, "Byte Queue Limits" (BQL) is *required*. I don't
>> think any USB to ethernet adaptors have that yet, but I would welcome
>> being wrong. And even if BQL worked over USB, we might have issues
>> with the USB layer left to deal with... but BQL is easy to implement
>> on native ethernet (6-8 lines of code or so)...
>> I went looking through the source trees briefly and didn't find
>> anything that jumped out at me. If you can point me to the right
>> drivers I'll take a look. (and/or ask question 3 on a rasperry pi list
>> for us?)
> I did a bit of digging, and the Raspberry Pi uses the SMSC LAN9512 chip for
> wired Ethernet
> (http://www.smsc.com/media/Downloads_Public/Data_Sheets/9512.pdf). The
> smsc95xx driver currently lacks BQL support, so that would need to be added
22k worth of native buffering in the driver (at least at this layer)
(at 100Mbit, I usually use 3k)
#define DEFAULT_HS_BURST_CAP_SIZE (16 * 1024 + 5 * HS_USB_PKT_SIZE)
#define DEFAULT_FS_BURST_CAP_SIZE (6 * 1024 + 33 * FS_USB_PKT_SIZE)
And: Either this is a "yea! one abstraction to fit them all", or a
"oh, god, we need something else to track completions", as above it
uses a generic usbnet.c driver, which, sigh, does try to aggregate
Interestingly it tries to live for 5ms at a time, interrupt-free. This
is worrisome given codel at the layer its at and its 5ms target.
Also wandering through the various conditions in tx_complete was "interesting"
I kind of wish I hadn't looked! But for all I know this is a simpler
use-case for addressing aggregated packets than wifi...
> Robert Bradley
> Cerowrt-devel mailing list
> Cerowrt-devel at lists.bufferbloat.net
http://www.bufferbloat.net/projects/cerowrt/wiki - "3.3.8-17 is out
More information about the Cerowrt-devel