diff mbox series

arm: mach-omap2: am33xx: musb: Fix condition for USB device definition

Message ID 20230621-fix_usb_ether_init-v1-1-2156923994a9@baylibre.com
State Changes Requested
Delegated to: Tom Rini
Headers show
Series arm: mach-omap2: am33xx: musb: Fix condition for USB device definition | expand

Commit Message

Julien Panis June 21, 2023, 3:56 p.m. UTC
This patch fixes a bad condition for USB device definition.
This prevents from getting a "No USB device found" error.

Fixes: 6815a66ad7430 ("am33xx: musb: Remove unused configuration logic")
Signed-off-by: Julien Panis <jpanis@baylibre.com>
---
This patch fixes a bad condition which leads to
'no USB device found' error, in usb_ether_init()
function for instance.
---
 arch/arm/mach-omap2/am33xx/board.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


---
base-commit: 19b77d3d23966a0d6dbb3c86187765f11100fb6f
change-id: 20230621-fix_usb_ether_init-4bf4f1135113

Best regards,

Comments

Tom Rini June 21, 2023, 5:32 p.m. UTC | #1
On Wed, Jun 21, 2023 at 05:56:56PM +0200, Julien Panis wrote:
> This patch fixes a bad condition for USB device definition.
> This prevents from getting a "No USB device found" error.
> 
> Fixes: 6815a66ad7430 ("am33xx: musb: Remove unused configuration logic")
> Signed-off-by: Julien Panis <jpanis@baylibre.com>
> ---
> This patch fixes a bad condition which leads to
> 'no USB device found' error, in usb_ether_init()
> function for instance.
> ---
>  arch/arm/mach-omap2/am33xx/board.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/arm/mach-omap2/am33xx/board.c b/arch/arm/mach-omap2/am33xx/board.c
> index ecc0a592e993..000c0d7712f9 100644
> --- a/arch/arm/mach-omap2/am33xx/board.c
> +++ b/arch/arm/mach-omap2/am33xx/board.c
> @@ -208,7 +208,7 @@ int cpu_mmc_init(struct bd_info *bis)
>  
>  /* AM33XX has two MUSB controllers which can be host or gadget */
>  #if (defined(CONFIG_AM335X_USB0) || defined(CONFIG_AM335X_USB1)) && \
> -	defined(CONFIG_SPL_BUILD)
> +	!defined(CONFIG_SPL_BUILD)
>  
>  static struct musb_hdrc_config musb_config = {
>  	.multipoint     = 1,

Well, that's just going to break USB networking in SPL, which is
supposed to be the only case for this code.  It's been a while since I
poked at this particular part of the code and board, is the gadget port
one with a "normal" mini port, or do we need one of the USB A <-> USB A
cables for it?  My general recollection of when I did 6815a66ad7430 was
that the device tree should control the ports in U-Boot itself.
Julien Panis June 22, 2023, 10:05 a.m. UTC | #2
On 6/21/23 19:32, Tom Rini wrote:
> On Wed, Jun 21, 2023 at 05:56:56PM +0200, Julien Panis wrote:
>> This patch fixes a bad condition for USB device definition.
>> This prevents from getting a "No USB device found" error.
>>
>> Fixes: 6815a66ad7430 ("am33xx: musb: Remove unused configuration logic")
>> Signed-off-by: Julien Panis <jpanis@baylibre.com>
>> ---
>> This patch fixes a bad condition which leads to
>> 'no USB device found' error, in usb_ether_init()
>> function for instance.
>> ---
>>   arch/arm/mach-omap2/am33xx/board.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/arch/arm/mach-omap2/am33xx/board.c b/arch/arm/mach-omap2/am33xx/board.c
>> index ecc0a592e993..000c0d7712f9 100644
>> --- a/arch/arm/mach-omap2/am33xx/board.c
>> +++ b/arch/arm/mach-omap2/am33xx/board.c
>> @@ -208,7 +208,7 @@ int cpu_mmc_init(struct bd_info *bis)
>>   
>>   /* AM33XX has two MUSB controllers which can be host or gadget */
>>   #if (defined(CONFIG_AM335X_USB0) || defined(CONFIG_AM335X_USB1)) && \
>> -	defined(CONFIG_SPL_BUILD)
>> +	!defined(CONFIG_SPL_BUILD)
>>   
>>   static struct musb_hdrc_config musb_config = {
>>   	.multipoint     = 1,
> Well, that's just going to break USB networking in SPL, which is
> supposed to be the only case for this code.  It's been a while since I
> poked at this particular part of the code and board, is the gadget port
> one with a "normal" mini port, or do we need one of the USB A <-> USB A
> cables for it?  My general recollection of when I did 6815a66ad7430 was
> that the device tree should control the ports in U-Boot itself.
>

That's a "normal" mini port, I am working on am335x-icev2.
I missed the logic of 6815a66ad7430. I understand now, so my
patch was not suitable to fix the bug I encountered.
Additional investigations revealed that usb0 'dr_mode' property
is not overlayed to 'peripheral' in 'am335x-icev2-u-boot.dtsi'.
That's why I saw this USB error. I'm going to fix that and send
a new patch.
diff mbox series

Patch

diff --git a/arch/arm/mach-omap2/am33xx/board.c b/arch/arm/mach-omap2/am33xx/board.c
index ecc0a592e993..000c0d7712f9 100644
--- a/arch/arm/mach-omap2/am33xx/board.c
+++ b/arch/arm/mach-omap2/am33xx/board.c
@@ -208,7 +208,7 @@  int cpu_mmc_init(struct bd_info *bis)
 
 /* AM33XX has two MUSB controllers which can be host or gadget */
 #if (defined(CONFIG_AM335X_USB0) || defined(CONFIG_AM335X_USB1)) && \
-	defined(CONFIG_SPL_BUILD)
+	!defined(CONFIG_SPL_BUILD)
 
 static struct musb_hdrc_config musb_config = {
 	.multipoint     = 1,