[PATCH v2 0/2] Fix 'no USB device found' error.

Roger Quadros rogerq at kernel.org
Mon Jul 3 18:12:47 CEST 2023



On 26/06/2023 10:32, Nishanth Menon wrote:
> On 13:59-20230623, Tom Rini wrote:
>> On Fri, Jun 23, 2023 at 09:42:01AM +0200, Julien Panis wrote:
>>>
>>>
>>> On 6/22/23 17:49, Tom Rini wrote:
>>>> On Thu, Jun 22, 2023 at 04:34:34PM +0200, Julien Panis wrote:
>>>>> This series fixes usb0 dr_mode for am335x-icev2
>>>>> and am335x-evmsk. It must be set to 'peripheral'
>>>>> in order to avoid 'no USB device found' error,
>>>>> in usb_ether_init() function.
>>>>>
>>>>> Signed-off-by: Julien Panis <jpanis at baylibre.com>
>>>>> ---
>>>>> Changes in v2:
>>>>> - Drop the modification made in arch/arm/mach-omap2/am33xx/board.c
>>>>> - Configure usb0 dr_mode as peripheral in 'am335x-icev2-u-boot.dtsi'
>>>>>    and 'am335x-evmsk-u-boot.dtsi' device trees.
>>>>> - Link to v1: https://lore.kernel.org/r/20230621-fix_usb_ether_init-v1-1-2156923994a9@baylibre.com
>>>>>
>>>>> ---
>>>>> Julien Panis (2):
>>>>>        arm: dts: am335x-icev2-u-boot: Configure peripheral mode for usb0
>>>>>        arm: dts: am335x-evmsk-u-boot: Configure peripheral mode for usb0
>>>>>
>>>>>   arch/arm/dts/am335x-evmsk-u-boot.dtsi | 4 ++++
>>>>>   arch/arm/dts/am335x-icev2-u-boot.dtsi | 4 ++++
>>>>>   2 files changed, 8 insertions(+)
>>>> I'll ask the first question that Nishanth might also ask, which is why
>>>> don't these belong in the kernel dts files?  Thanks!
>>>>
>>>
>>> That's a good question. :) Looping Nishanth...
>>> usb0 dr_mode property is already overlayed for am335x-evm,
>>> in 'am335x-evm-u-boot.dtsi'. So, it appeared more consistent
>>> to me to do the same thing for am335x-icev2 and am335x-evmsk.
>>> I guess that the goal is to configure usb0 as host by default at
>>> kernel boot, since we do not necessarily want to use this usb0
>>> as peripheral from userspace.
>>> Is it the right explanation @Vignesh @Nishanth ?
>>
>> It's I think even more likely that the am335x_evm fragment needs to go
>> upstream too.
>  
> Adding Tony to the thread, but I think it is better to send the changes
> to upstream kernel.
> 

Linux DT files are correct. USB0 is a dual-role port so it sets it to 'otg'.
u-boot doesn't support 'otg' so we need to override it to 'peripheral' in -u-boot.dtsi

-- 
cheers,
-roger


More information about the U-Boot mailing list