From mboxrd@z Thu Jan 1 00:00:00 1970 From: Hans de Goede Date: Wed, 6 Apr 2016 17:24:32 +0200 Subject: [U-Boot] Ethernet via USB on Sinlinx SinA33 In-Reply-To: <56FA22D4.7050104@free-electrons.com> References: <56F5720A.5000805@free-electrons.com> <56F929E7.6060200@redhat.com> <56FA22D4.7050104@free-electrons.com> Message-ID: <57052A30.5000902@redhat.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi, On 29-03-16 08:38, Quentin Schulz wrote: > Hi, > > On 28/03/2016 14:56, Hans de Goede wrote: >> Hi, >> >> On 25-03-16 18:14, Quentin Schulz wrote: >>> Hi, >>> >>> I am trying to get Ethernet to work through the USB port of the Sinlinx >>> SinA33 on U-Boot to use TFTP to get the kernel and dtb files. >>> >>> However, I am getting 'data abort' when using dhcp or tftp after adding: >>> #define CONFIG_USB_HOST_ETHER >>> #define CONFIG_USB_ETHER_ASIX >>> >>> to include/configs/sunxi-common.h and checking CONFIG_USB_EHCI_HCD as >>> told in the documentation [1] >>> >>> I tested this configuration with the C.H.I.P. and it is working well. >> >> Are you perhaps building u-boot with gcc6 ? There are some known issues >> when building u-boot with gcc-6, which look pretty much like this. > > No, I'm building with gcc-5: > $ arm-linux-gnueabihf-gcc --version > arm-linux-gnueabihf-gcc (Ubuntu 5.2.1-22ubuntu1) 5.2.1 20151010 > >> Is the ethernet adapter connected to a regular usb host port, or to >> the otg port ? > > The Ethernet adapter is connected to the regular USB host port. So I've been debugging some armv7 cache issues lately and I've come up with the following fix: https://patchwork.ozlabs.org/patch/605967/ This might very will fix your issue too. If not we're likely missing some cache flushing / invalidation in the usb driver for your usb host controller. Regards, Hans > > Regards, > > Quentin > > >>> Steps to reproduce: >>> >>> 1) Add the following lines to include/configs/sunxi-common.h: >>> >>> #define CONFIG_USB_HOST_ETHER >>> #define CONFIG_USB_ETHER_ASIX >>> >>> 2) make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- >>> Sinlinx_SinA33_defconfig >>> 3) make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- menuconfig >>> 4) Check CONFIG_USB_EHCI_HC and save configuration >>> 5) make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j$(nproc) >>> 6) Prepare SDCard: >>> sudo dd if=u-boot-sunxi-with-spl.bin of=/dev/sdX bs=1024 seek=8 >>> 7) Boot the board and run dhcp or tftp >>> 8) Get 'data abort' and board gets reset (ethact is also not defined) >>> >>> The log file is attached. >>> >>> Thank you, >>> >>> Quentin >>> >>> [1] https://github.com/lentinj/u-boot/blob/master/doc/README.usb#L132 >>>