Re: musb is broken in master

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

 



Hello,

On 2/24/20 3:08 PM, Yegor Yefremov wrote:
> I've checked out barebox master and then reverted
> 574eed3f6fcf056aa4c9e46c4b5224e3f7844d8d (dts: update to v5.5-rc1).
> After examining the changes, I found out that am33xx.dtsi was changed.
> One of this changes is the following:
> 
> -               usb: usb@47400000 {
> -                       compatible = "ti,am33xx-usb";
> -                       reg = <0x47400000 0x1000>;
> -                       ranges;
> +               usb: target-module@47400000 {
> +                       compatible = "ti,sysc-omap4", "ti,sysc";
> +                       reg = <0x47400000 0x4>,
> +                             <0x47400010 0x4>;
> +                       reg-names = "rev", "sysc";
> +                       ti,sysc-mask = <(SYSC_OMAP4_FREEEMU |
> +                                        SYSC_OMAP2_SOFTRESET)>;
> +                       ti,sysc-midle = <SYSC_IDLE_FORCE>,
> +                                       <SYSC_IDLE_NO>,
> +                                       <SYSC_IDLE_SMART>;
> +                       ti,sysc-sidle = <SYSC_IDLE_FORCE>,
> +                                       <SYSC_IDLE_NO>,
> +                                       <SYSC_IDLE_SMART>,
> +                                       <SYSC_IDLE_SMART_WKUP>;
> +                       clocks = <&l3s_clkctrl AM3_L3S_USB_OTG_HS_CLKCTRL 0>;
> +                       clock-names = "fck";
> 
> If I understand it correctly, drivers/usb/musb/musb_am335x.c still has
> the old .compatible string:
> 
> static __maybe_unused struct of_device_id am335x_child_dt_ids[] = {
>         {
>                 .compatible = "ti,am33xx-usb",
>         }, {
>                 /* sentinel */
>         },
> };
> 
> This node was removed:
> 
> -                       usb_ctrl_mod: control@44e10620 {
> -                               compatible = "ti,am335x-usb-ctrl-module";
> -                               reg = <0x44e10620 0x10
> -                                       0x44e10648 0x4>;
> -                               reg-names = "phy_ctrl", "wakeup";
> -                               status = "disabled";
> -                       };
> 
> So there are many changes in device tree files that are not reflected
> in the drivers. I haven't debugged it but just examined the introduced
> changes.

I see. I misunderstood your earlier answer to mean that reverting the _Linux_
patch in question fixed the issue for you instead of reverting the whole _barebox_
patch.

I've bisected the issue in the kernel git and arrived at the same commit about
ti,sysc that you suspected. While we have the necessary support of barebox to
support this, the new device tree structuring changed the order in which we probed
the different MUSB drivers. I have just sent out two patches to teach the MUSB
drivers to accept the new world order. Your Tested-by: would be appreciated.

Apparently, we already do some automatic testing for the BeagleBone, including
barebox, with our internal DistroKit CI. I'll amend our tests, so it may catch
new warnings after updates, like the one you encountered.

Cheers
Ahmad

> 
> Yegor
> 

-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
barebox@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/barebox



[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux