Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1552054 > unrolled thread

Re: [PATCH v5 0/6] inherit dma configuration from parent dev

Started byRoger Quadros <rogerq@ti.com>
First post2017-01-05 16:30 +0100
Last post2017-01-11 22:40 +0100
Articles 4 — 3 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH v5 0/6] inherit dma configuration from parent dev Roger Quadros <rogerq@ti.com> - 2017-01-05 16:30 +0100
    Re: [PATCH v5 0/6] inherit dma configuration from parent dev Greg KH <gregkh@linuxfoundation.org> - 2017-01-05 18:20 +0100
      Re: [PATCH v5 0/6] inherit dma configuration from parent dev Roger Quadros <rogerq@ti.com> - 2017-01-10 13:20 +0100
        Re: [PATCH v5 0/6] inherit dma configuration from parent dev Javier Martinez Canillas <javier@dowhile0.org> - 2017-01-11 22:40 +0100

#1552054 — Re: [PATCH v5 0/6] inherit dma configuration from parent dev

FromRoger Quadros <rogerq@ti.com>
Date2017-01-05 16:30 +0100
SubjectRe: [PATCH v5 0/6] inherit dma configuration from parent dev
Message-ID<sWi9j-4Q4-9@gated-at.bofh.it>
Hi,

On 17/11/16 13:43, Sriram Dash wrote:
> For xhci-hcd platform device, all the DMA parameters are not
> configured properly, notably dma ops for dwc3 devices.
> 
> The idea here is that you pass in the parent of_node along
> with the child device pointer, so it would behave exactly
> like the parent already does. The difference is that it also
> handles all the other attributes besides the mask.
> 
> Arnd Bergmann (6):
>   usb: separate out sysdev pointer from usb_bus
>   usb: chipidea: use bus->sysdev for DMA configuration
>   usb: ehci: fsl: use bus->sysdev for DMA configuration
>   usb: xhci: use bus->sysdev for DMA configuration
>   usb: dwc3: use bus->sysdev for DMA configuration
>   usb: dwc3: Do not set dma coherent mask

Only the dwc3 patches have been picked up for v4.10 and the rest are still missing.
Any plans to pick them in the rc cycle?

DMA configuration is still broken for XHCI on v4.10 and -next.

cheers,
-roger

> 
>  drivers/usb/chipidea/core.c    |  3 ---
>  drivers/usb/chipidea/host.c    |  3 ++-
>  drivers/usb/chipidea/udc.c     | 10 +++++----
>  drivers/usb/core/buffer.c      | 12 +++++------
>  drivers/usb/core/hcd.c         | 48 +++++++++++++++++++++++++-----------------
>  drivers/usb/core/usb.c         | 18 ++++++++--------
>  drivers/usb/dwc3/core.c        | 27 ++++++++++++------------
>  drivers/usb/dwc3/core.h        |  3 +++
>  drivers/usb/dwc3/dwc3-exynos.c | 10 ---------
>  drivers/usb/dwc3/dwc3-pci.c    | 10 +++++++++
>  drivers/usb/dwc3/dwc3-st.c     |  1 -
>  drivers/usb/dwc3/ep0.c         |  8 +++----
>  drivers/usb/dwc3/gadget.c      | 33 +++++++++++++++--------------
>  drivers/usb/dwc3/host.c        | 16 ++++++--------
>  drivers/usb/host/ehci-fsl.c    |  4 ++--
>  drivers/usb/host/xhci-mem.c    | 12 +++++------
>  drivers/usb/host/xhci-plat.c   | 33 +++++++++++++++++++++++------
>  drivers/usb/host/xhci.c        | 15 +++++++++----
>  include/linux/usb.h            |  1 +
>  include/linux/usb/hcd.h        |  3 +++
>  20 files changed, 155 insertions(+), 115 deletions(-)
> 

[toc] | [next] | [standalone]


#1552131

FromGreg KH <gregkh@linuxfoundation.org>
Date2017-01-05 18:20 +0100
Message-ID<sWjRM-5ZY-19@gated-at.bofh.it>
In reply to#1552054
On Thu, Jan 05, 2017 at 05:21:09PM +0200, Roger Quadros wrote:
> Hi,
> 
> On 17/11/16 13:43, Sriram Dash wrote:
> > For xhci-hcd platform device, all the DMA parameters are not
> > configured properly, notably dma ops for dwc3 devices.
> > 
> > The idea here is that you pass in the parent of_node along
> > with the child device pointer, so it would behave exactly
> > like the parent already does. The difference is that it also
> > handles all the other attributes besides the mask.
> > 
> > Arnd Bergmann (6):
> >   usb: separate out sysdev pointer from usb_bus
> >   usb: chipidea: use bus->sysdev for DMA configuration
> >   usb: ehci: fsl: use bus->sysdev for DMA configuration
> >   usb: xhci: use bus->sysdev for DMA configuration
> >   usb: dwc3: use bus->sysdev for DMA configuration
> >   usb: dwc3: Do not set dma coherent mask
> 
> Only the dwc3 patches have been picked up for v4.10 and the rest are still missing.
> Any plans to pick them in the rc cycle?
> 
> DMA configuration is still broken for XHCI on v4.10 and -next.

It's always been broken, so it's not a big deal for 4.10 :)

[toc] | [prev] | [next] | [standalone]


#1555216

FromRoger Quadros <rogerq@ti.com>
Date2017-01-10 13:20 +0100
Message-ID<sY3zb-1dQ-31@gated-at.bofh.it>
In reply to#1552131
On 05/01/17 19:16, Greg KH wrote:
> On Thu, Jan 05, 2017 at 05:21:09PM +0200, Roger Quadros wrote:
>> Hi,
>>
>> On 17/11/16 13:43, Sriram Dash wrote:
>>> For xhci-hcd platform device, all the DMA parameters are not
>>> configured properly, notably dma ops for dwc3 devices.
>>>
>>> The idea here is that you pass in the parent of_node along
>>> with the child device pointer, so it would behave exactly
>>> like the parent already does. The difference is that it also
>>> handles all the other attributes besides the mask.
>>>
>>> Arnd Bergmann (6):
>>>   usb: separate out sysdev pointer from usb_bus
>>>   usb: chipidea: use bus->sysdev for DMA configuration
>>>   usb: ehci: fsl: use bus->sysdev for DMA configuration
>>>   usb: xhci: use bus->sysdev for DMA configuration
>>>   usb: dwc3: use bus->sysdev for DMA configuration
>>>   usb: dwc3: Do not set dma coherent mask
>>
>> Only the dwc3 patches have been picked up for v4.10 and the rest are still missing.
>> Any plans to pick them in the rc cycle?
>>
>> DMA configuration is still broken for XHCI on v4.10 and -next.
> 
> It's always been broken, so it's not a big deal for 4.10 :)
> 
OK. But I do see the following warning on xhci probe on TI platforms that use
dwc3 IP. This is new in v4.10.

[   11.664835] ------------[ cut here ]------------
[   11.669693] WARNING: CPU: 1 PID: 534 at drivers/usb/host/xhci-plat.c:168 xhci_plat_probe+0x180/0x450 [xhci_plat_hcd]
[   11.680765] Modules linked in: xhci_plat_hcd(+) xhci_hcd usbcore evdev dwc3 snd_soc_simple_card snd_soc_tlv320aic3x snd_soc_simple_card_utils udc_core m25p80 snd_soc_davinci_mcasp usb_common spi_nor snd_soc_e
[   11.726078] CPU: 1 PID: 534 Comm: modprobe Tainted: G        W       4.10.0-rc3 #1075
[   11.734293] Hardware name: Generic DRA74X (Flattened Device Tree)
[   11.740695] [<c011013c>] (unwind_backtrace) from [<c010c300>] (show_stack+0x10/0x14)
[   11.748829] [<c010c300>] (show_stack) from [<c04a0018>] (dump_stack+0xac/0xe0)
[   11.756413] [<c04a0018>] (dump_stack) from [<c013700c>] (__warn+0xd8/0x104)
[   11.763722] [<c013700c>] (__warn) from [<c01370e4>] (warn_slowpath_null+0x20/0x28)
[   11.771675] [<c01370e4>] (warn_slowpath_null) from [<bf317280>] (xhci_plat_probe+0x180/0x450 [xhci_plat_hcd])
[   11.782110] [<bf317280>] (xhci_plat_probe [xhci_plat_hcd]) from [<c055f390>] (platform_drv_probe+0x4c/0xb0)
[   11.792338] [<c055f390>] (platform_drv_probe) from [<c055d3ec>] (driver_probe_device+0x200/0x2d4)
[   11.801655] [<c055d3ec>] (driver_probe_device) from [<c055d580>] (__driver_attach+0xc0/0xc4)
[   11.810518] [<c055d580>] (__driver_attach) from [<c055b868>] (bus_for_each_dev+0x6c/0xa0)
[   11.819095] [<c055b868>] (bus_for_each_dev) from [<c055c9cc>] (bus_add_driver+0x18c/0x214)
[   11.827767] [<c055c9cc>] (bus_add_driver) from [<c055e3b8>] (driver_register+0x78/0xf8)
[   11.836167] [<c055e3b8>] (driver_register) from [<c010188c>] (do_one_initcall+0x3c/0x174)
[   11.844751] [<c010188c>] (do_one_initcall) from [<c023c084>] (do_init_module+0x5c/0x1d0)
[   11.853247] [<c023c084>] (do_init_module) from [<c01da5a8>] (load_module+0x1d48/0x23a8)
[   11.861649] [<c01da5a8>] (load_module) from [<c01dad58>] (SyS_init_module+0x150/0x174)
[   11.869961] [<c01dad58>] (SyS_init_module) from [<c0107860>] (ret_fast_syscall+0x0/0x1c)
[   11.878494] ---[ end trace a0ca4c6c0c9a9ee9 ]---
[   11.883400] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller

cheers,
-roger

[toc] | [prev] | [next] | [standalone]


#1556955

FromJavier Martinez Canillas <javier@dowhile0.org>
Date2017-01-11 22:40 +0100
Message-ID<sYyMG-3Dx-19@gated-at.bofh.it>
In reply to#1555216
[adding Arnd Bergmann who wrote the patches and I noticed was not cc'ed]

Hello,

On Tue, Jan 10, 2017 at 9:11 AM, Roger Quadros <rogerq@ti.com> wrote:
> On 05/01/17 19:16, Greg KH wrote:
>> On Thu, Jan 05, 2017 at 05:21:09PM +0200, Roger Quadros wrote:
>>> Hi,
>>>
>>> On 17/11/16 13:43, Sriram Dash wrote:
>>>> For xhci-hcd platform device, all the DMA parameters are not
>>>> configured properly, notably dma ops for dwc3 devices.
>>>>
>>>> The idea here is that you pass in the parent of_node along
>>>> with the child device pointer, so it would behave exactly
>>>> like the parent already does. The difference is that it also
>>>> handles all the other attributes besides the mask.
>>>>
>>>> Arnd Bergmann (6):
>>>>   usb: separate out sysdev pointer from usb_bus
>>>>   usb: chipidea: use bus->sysdev for DMA configuration
>>>>   usb: ehci: fsl: use bus->sysdev for DMA configuration
>>>>   usb: xhci: use bus->sysdev for DMA configuration
>>>>   usb: dwc3: use bus->sysdev for DMA configuration
>>>>   usb: dwc3: Do not set dma coherent mask
>>>
>>> Only the dwc3 patches have been picked up for v4.10 and the rest are still missing.
>>> Any plans to pick them in the rc cycle?
>>>
>>> DMA configuration is still broken for XHCI on v4.10 and -next.
>>
>> It's always been broken, so it's not a big deal for 4.10 :)
>>
> OK. But I do see the following warning on xhci probe on TI platforms that use
> dwc3 IP. This is new in v4.10.
>

I see a similar warning on an Exynos5800 machine (Peach Pi). This is
new starting from v4.10-rc1.

> [   11.664835] ------------[ cut here ]------------
> [   11.669693] WARNING: CPU: 1 PID: 534 at drivers/usb/host/xhci-plat.c:168 xhci_plat_probe+0x180/0x450 [xhci_plat_hcd]
> [   11.680765] Modules linked in: xhci_plat_hcd(+) xhci_hcd usbcore evdev dwc3 snd_soc_simple_card snd_soc_tlv320aic3x snd_soc_simple_card_utils udc_core m25p80 snd_soc_davinci_mcasp usb_common spi_nor snd_soc_e
> [   11.726078] CPU: 1 PID: 534 Comm: modprobe Tainted: G        W       4.10.0-rc3 #1075
> [   11.734293] Hardware name: Generic DRA74X (Flattened Device Tree)
> [   11.740695] [<c011013c>] (unwind_backtrace) from [<c010c300>] (show_stack+0x10/0x14)
> [   11.748829] [<c010c300>] (show_stack) from [<c04a0018>] (dump_stack+0xac/0xe0)
> [   11.756413] [<c04a0018>] (dump_stack) from [<c013700c>] (__warn+0xd8/0x104)
> [   11.763722] [<c013700c>] (__warn) from [<c01370e4>] (warn_slowpath_null+0x20/0x28)
> [   11.771675] [<c01370e4>] (warn_slowpath_null) from [<bf317280>] (xhci_plat_probe+0x180/0x450 [xhci_plat_hcd])
> [   11.782110] [<bf317280>] (xhci_plat_probe [xhci_plat_hcd]) from [<c055f390>] (platform_drv_probe+0x4c/0xb0)
> [   11.792338] [<c055f390>] (platform_drv_probe) from [<c055d3ec>] (driver_probe_device+0x200/0x2d4)
> [   11.801655] [<c055d3ec>] (driver_probe_device) from [<c055d580>] (__driver_attach+0xc0/0xc4)
> [   11.810518] [<c055d580>] (__driver_attach) from [<c055b868>] (bus_for_each_dev+0x6c/0xa0)
> [   11.819095] [<c055b868>] (bus_for_each_dev) from [<c055c9cc>] (bus_add_driver+0x18c/0x214)
> [   11.827767] [<c055c9cc>] (bus_add_driver) from [<c055e3b8>] (driver_register+0x78/0xf8)
> [   11.836167] [<c055e3b8>] (driver_register) from [<c010188c>] (do_one_initcall+0x3c/0x174)
> [   11.844751] [<c010188c>] (do_one_initcall) from [<c023c084>] (do_init_module+0x5c/0x1d0)
> [   11.853247] [<c023c084>] (do_init_module) from [<c01da5a8>] (load_module+0x1d48/0x23a8)
> [   11.861649] [<c01da5a8>] (load_module) from [<c01dad58>] (SyS_init_module+0x150/0x174)
> [   11.869961] [<c01dad58>] (SyS_init_module) from [<c0107860>] (ret_fast_syscall+0x0/0x1c)
> [   11.878494] ---[ end trace a0ca4c6c0c9a9ee9 ]---
> [   11.883400] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
>

I tracked down to commit d64ff406e51e ("usb: dwc3: use bus->sysdev for
DMA configuration") which is part of this series. If I revert that
commit, the warning goes away.

Best regards,
Javier

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web