Date: Sun, 31 May 2015 18:05:42 -0300 From: Luiz Otavio O Souza <lists.br@gmail.com> To: che@bein.link Cc: "freebsd-arm@freebsd.org" <arm@freebsd.org> Subject: Re: if_dwc instead of if_emac on cubieboard2 Message-ID: <CAB=2f8xOB5GKwWknoGz8Js27%2BRJhdN1dwU8x3fa3W_02pCKPzw@mail.gmail.com> In-Reply-To: <6544486.FbFh8Vg9WT@thinkpad> References: <6544486.FbFh8Vg9WT@thinkpad>
next in thread | previous in thread | raw e-mail | index | archive | help
On 29 May 2015 at 18:10, Maxim V Filimonov wrote: > Hello everyone, > > I was advised to look at if_dwc instead of if_emac to improve network > performance on my cubieboard2. However, I was told that setting >> device dwc > instead of >> device emac > in the kernel config isn't enough. It's also necessary to configure > cubieboard's pins on dwc startup. This is where I'm stuck. I have the code: > 1. > http://svnweb.freebsd.org/base/head/sys/arm/allwinner/a10_gpio.c?revision=281085&view=markup#l527 > > 2. > http://svnweb.freebsd.org/base/head/sys/arm/allwinner/if_emac.c?revision=281675&view=markup#l143 > > And I don't know how to make it work. What i was told, though, was that I > should use the constant 5 instead of A10_GPIO_PULLDOWN in a10_gpio.c > How can I make the code from a10_gpio.c get called on dwc startup? Hi Maxim, As br@ said, the if_dwc driver is for a slight different version of hardware (basically it differs on tx and rx descriptor layouts and a few other bits here and there). After struggling with the differences for a few days I could make it work. Now it needs a serious cleanup and then I have to think what to do WRT existent if_dwc (if it is possible to integrate the both versions in the same driver or leave it as a separated driver). The driver also needs some infrastructure work to guarantee the internal states on stop->start cycles. This should get us a reliable driver and finally an usable system on a20 SoCs (specially on cubie2 and banana pi). Thank you for bring this back again. Luiz
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAB=2f8xOB5GKwWknoGz8Js27%2BRJhdN1dwU8x3fa3W_02pCKPzw>