[U-Boot] CONFIG_DM_ETH USB_ETHER_ASIX Reception Issue on Tegra

Simon Glass sjg at chromium.org
Fri Aug 7 21:09:15 CEST 2015


Hi Marcel,

On 7 August 2015 at 00:41, Marcel Ziswiler <marcel at ziswiler.com> wrote:
> On Thu, 2015-08-06 at 23:29 -0600, Simon Glass wrote:
>
>> The memalign() function arguments are around the wrong way!
>
> I assume you meant that one:
>
> diff --git a/drivers/usb/eth/usb_ether.c b/drivers/usb/eth/usb_ether.c
> index 3c3e082..11d26be 100644
> --- a/drivers/usb/eth/usb_ether.c
> +++ b/drivers/usb/eth/usb_ether.c
> @@ -73,7 +73,7 @@ int usb_ether_register(struct udevice *dev, struct
> ueth_data *ueth, int rxsize)
>         }
>
>         ueth->rxsize = rxsize;
> -       ueth->rxbuf = memalign(rxsize, ARCH_DMA_MINALIGN);
> +       ueth->rxbuf = memalign(ARCH_DMA_MINALIGN, rxsize);
>         if (!ueth->rxbuf)
>                 return -ENOMEM;
>
>> Definitely
>> worth seeing if that fixes it. For some reason rpi and minnowboard
>> seem to work even with this error.
>
> Unfortunately still the same:
>
> U-Boot SPL 2015.10-rc1-00188-gfac971b-dirty (Aug 07 2015 - 06:34:28)
>
>
> U-Boot 2015.10-rc1-00188-gfac971b-dirty (Aug 07 2015 - 06:34:28 +0000)
>
> TEGRA20
> Model: Toradex Colibri T20
> Board: Toradex Colibri T20
> DRAM:  512 MiB
> NAND:  1024 MiB
> MMC:   Tegra SD/MMC: 0
> *** Warning - bad CRC, using default environment
>
> In:    serial
> Out:   serial
> Err:   serial
> Net:   Net Initialization Skipped
> No ethernet found.
> Hit any key to stop autoboot:  0
> Colibri T20 # usb start
> starting USB...
> USB0:   USB EHCI 1.00
> USB1:   USB EHCI 1.00
> USB2:   USB EHCI 1.00
> scanning bus 1 for devices... 1 USB Device(s) found
> scanning bus 2 for devices...
> Warning: asix_eth using MAC address from ROM
> 2 USB Device(s) found
> scanning bus 0 for devices... 1 USB Device(s) found
> Colibri T20 # dhcp
> BOOTP broadcast 1
> BOOTP broadcast 2
> BOOTP broadcast 3
> EHCI timed out on TD - token=0x8008d80
> Rx: failed to receive: -5
> BOOTP broadcast 4
> BOOTP broadcast 5
> EHCI timed out on TD - token=0x88008d80
> Rx: failed to receive: -5
> BOOTP broadcast 6
> BOOTP broadcast 7
> EHCI timed out on TD - token=0x8008d80
> Rx: failed to receive: -5
> BOOTP broadcast 8
> BOOTP broadcast 9
> EHCI timed out on TD - token=0x88008d80
> Rx: failed to receive: -5
>
> Retry time exceeded; starting again
> Colibri T20 #

One point to make is that I have seen this on and off for a while.
When I tested the driver model EHCI support I found this bug. But then
when I turned off driver model it was still there. So I decided it was
pre-existing. Also I'm not sure that this error is handled correctly.
The code that times out does not retry properly.

Marek do

Regards,
Simon


More information about the U-Boot mailing list