Re: [PATCH] ARM: exynos_defconfig: Enable DWC2 USB driver and USB ethernet gadget

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 25 August 2015 at 23:49, Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx> wrote:
> On 26.08.2015 15:03, Marek Szyprowski wrote:
>> Hello,
>>
>> On 2015-08-26 05:43, Krzysztof Kozlowski wrote:
>>> On 26.08.2015 10:58, Tyler Baker wrote:
>>>> Hi Krzysztof,
>>>>
>>>> On 25 August 2015 at 18:44, Krzysztof Kozlowski
>>>> <k.kozlowski@xxxxxxxxxxx> wrote:
>>>>> On 26.08.2015 06:00, Tyler Baker wrote:
>>>>>> Hi Marek/Krzysztof,
>>>>>>
>>>>>> On 18 August 2015 at 02:36, Krzysztof Kozlowski
>>>>>> <k.kozlowski@xxxxxxxxxxx> wrote:
>>>>>>> On 18.08.2015 18:15, Marek Szyprowski wrote:
>>>>>>>> DWC2 (s3c-hsotg) hardware module is available on many Exynos
>>>>>>>> based boards,
>>>>>>>> so enable DWC2 driver as well as the most common USB Ethernet
>>>>>>>> gadget.
>>>>>>>>
>>>>>>>> Signed-off-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
>>>>>> The kernelci.org bot recently reported a handful of exynos boot
>>>>>> failures in next-20150825[1] only when using exynos_defconfig.
>>>>> I noticed the issue too but I fought it was a temporary network
>>>>> problem.
>>>>> Apparently it's not temporary. :)
>>>> I thought the same as well :)
>>>>
>>>>>> I went
>>>>>> ahead and bisected[2] the failure and found this patch was the
>>>>>> offender. Looking a bit closer, the kernelci.org boot tests typically
>>>>>> pass ip=dhcp or ip=<ipaddr> as a kernel argument so that networking is
>>>>>> setup by the kernel. These boot failures are due to the kernel network
>>>>>> initialization timing out. Previously, in next-20150821[3] all the
>>>>>> exynos platforms failing in next-20150825 initialized their network
>>>>>> interfaces successfully, so this seems like a regression. Please have
>>>>>> a closer look at the boot logs[4][5] for comparison. Kevin pointed out
>>>>>> that  "asix 3-3.2.4:1.0 eth0: register 'asix' at
>>>>>> usb-12110000.usb-3.2.4, ASIX AX88772 USB 2.0 Ethernet" is missing from
>>>>>> the failed boot logs. Anyways, as a summary it looks like this change
>>>>>> broke networking support on the arndale, arndale-octa, odroid xu3, and
>>>>>> odroid x2.
>>>>> I don't have such problem on my Odroid XU3 which also performs netboot
>>>>> (Arch ARM Linux):
>>>> Doh. I just realized the odroid-u3 is failing not the odroid-xu3,
>>>> sorry for the confusion!
>>>>
>>>>> netboot=tftpboot 0x40008000 zImage; tftpboot 0x44000000
>>>>> exynos5422-odroidxu3-lite.dtb; bootz 0x40008000 - 0x44000000
>>>>>
>>>>> TFTP from server 192.168.1.10; our IP address is 192.168.1.11
>>>>>
>>>>> [    0.000000] Kernel command line: console=tty1
>>>>> console=ttySAC2,115200n8 root=/dev/mmcblk0p1 rootwait rw
>>>>> no_console_suspend smsc95xx.macaddr=00:1e:06:61:7a:93
>>>>>
>>>>>
>>>>> Do you have anything connected to USB ports of the devices?
>>>> Nope, nothing connected to the USB ports in my lab.
>>>>
>>>>> For example on boot-exynos5250-arndale.html I see:
>>>>> [    2.792934] using random self ethernet address
>>>>> [    2.797209] using random host ethernet address
>>>>> [    2.802244] usb0: HOST MAC 46:52:cf:b5:0f:e8
>>>>> [    2.805923] usb0: MAC a2:04:5d:a6:2c:fa
>>>>> [    2.809720] using random self ethernet address
>>>>> [    2.814137] using random host ethernet address
>>>>> [    2.818599] g_ether gadget: Ethernet Gadget, version: Memorial
>>>>> Day 2008
>>>>> [    2.825159] g_ether gadget: g_ether ready
>>>>>
>>>>> It looks like that's the difference.
>>> Two issues seem strange to me:
>>> 1. Why on these boards (except Odroid XU3) appears an usb0 interface
>>> (after adding gadget support)? If they don't have the USB cable attached
>>> then it shouldn't?
>>
>> When USB Ethernet gadget is loaded it always creates usb0 network
>> interface, regardless of the USB cable being attached or not.
>
> Thanks for explaining.
>
>>
>>> 2. ip=dhcp should send DCHP requests on all interfaces:
>>>
>>>     Otherwise the device is determined using
>>>     autoconfiguration. This is done by sending
>>>     autoconfiguration requests out of all devices,
>>>     and using the device that received the first reply.
>>>
>>> So why it is not sent on eth0? Maybe there is no eth0 interface now
>>> because of some conflict in USB drivers? Or maybe there was no eth0
>>> interface also before and everything booted from MMC?
>>
>> Maybe the names of network interfaces has changed or kernel parameters
>> lacks specifying which network interface has to be configured (usb0 or
>> eth0)?
>
> The ip=dhcp should send requests on all interfaces. The eth0 (provided
> by smsc95xx, @EHCI USB 12580000) should be there.
>
> After comparing U3 boots I see that on broken boot the "exynos-ehci
> 12580000.ehci" starts earlier - around 2.17s. Detection of MMC happens
> at 2.7s.
>
> However on proper U3 boot, the 12580000.ehci probes around 15s. This
> happens after MMC detection and after starting udev.
>
> Tyler,
> I don't know exactly how does your boot sequence look like. Maybe
> netboot always failed and it booted from mmc? But clearly the change is
> sensible and presence of usb0 interface should not fail the boot.

I'm just going to disable in kernel DHCP on these platforms, as they
are now broken.

Cheers,

Tyler
--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux SoC Development]     [Linux Rockchip Development]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Linux SCSI]     [Yosemite News]

  Powered by Linux