Re: musb is broken in master

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

 



On Mon, Feb 24, 2020 at 1:02 PM Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> wrote:
>
> On 2/24/20 12:55 PM, Yegor Yefremov wrote:
> > On Mon, Feb 24, 2020 at 12:54 PM Yegor Yefremov
> > <yegorslists@xxxxxxxxxxxxxx> wrote:
> >>
> >> On Mon, Feb 24, 2020 at 12:50 PM Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> wrote:
> >>>
> >>> Hi,
> >>>
> >>> On 2/24/20 12:09 PM, Yegor Yefremov wrote:
> >>>> Can it be that musb was broken because of this change in the mainline
> >>>> linux kernel [1]?
> >>>
> >>> But you said that it works when you readd status = "okay" to some
> >>> of the USB device tree nodes? Which node was it in particular?
> >>>
> >>>> The kernel uses ti-sysc mechanism to get/configure the related hw
> >>>> blocks. If I grep for ti-sysc in kernel, I get a lot of hits. But in
> >>>> barebox, it is only drivers/bus/ti-sysc.c that I find. Seems like a
> >>>> rather big update is required.
> >>>>
> >>>> [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/arch/arm/boot/dts/am33xx.dtsi?h=v5.6-rc3&id=0782e8572ce43f521ed6ff15e4a7ab9aa5acdc85
> >>>
> >>> I don't think that's the problem. Looks to me like it should work with
> >>> barebox as well. Or did you revert this patch and got USB working again?
> >>
> >> Yes, I just reverted the whole patch and got USB working again. It has
> >> nothing to do with my dts file as it is hosted only in barebox
> >> (arch/arm/dts/am335x-baltos-minimal.dts). It just includes the common
> >> DTS files like am33xx.dtsi.
> >
> > I mean, I have reverted only this one 574eed3f6fcf056aa4c9e46c4b5224e3f7844d8d.
>
> I meant that you revert the upstream device tree patch only. Either manually or by doing
> some temporary hack like symlink $BAREBOX/dts/src/arm to $LINUX/arch/arm/boot/dts
> and revert inside the kernel git tree.

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.

Yegor

_______________________________________________
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