Re: [RFC PATCH v2 0/3] prerequisites for device reserved local mem rework

Robin Murphy
2019-05-14T15:17:42Z

+Fredrik, Juergen

On 14/05/2019 15:38, laurentiu.tudor@nxp.com wrote:
> From: Laurentiu Tudor <laurentiu.tudor@nxp.com>
>
> For HCs that have local memory, replace the current DMA API usage
> with a genalloc generic allocator to manage the mappings for these
> devices.
> This is in preparation for dropping the existing "coherent" dma
> mem declaration APIs. Current implementation was relying on a short
> circuit in the DMA API that in the end, was acting as an allocator
> for these type of devices.
>
> Only compiled tested, so any volunteers willing to test are most welcome.

I recall an out-of-tree PlayStation 2 OHCI driver being another
HCD_LOCAL_MEM user - if Fredrik and Juergen are still active on that,
hopefully they might be able to comment on whether this approach can
work for them too. Patchwork link just in case:
https://patchwork.kernel.org/project/linux-usb/list/?series=117433

Robin.

>
> Thank you!
>
> For context, see thread here: https://lkml.org/lkml/2019/4/22/357
>
> Changes in v2:
> - use genalloc also in core usb (based on comment from Robin)
> - moved genpool decl to usb_hcd to be accesible from core usb
>
> Laurentiu Tudor (3):
> USB: use genalloc for USB HCs with local memory
> usb: host: ohci-sm501: init genalloc for local memory
> usb: host: ohci-tmio: init genalloc for local memory
>
> drivers/usb/core/buffer.c | 12 ++++++-
> drivers/usb/host/ohci-hcd.c | 23 +++++++++++---
> drivers/usb/host/ohci-sm501.c | 60 +++++++++++++++++++----------------
> drivers/usb/host/ohci-tmio.c | 23 +++++++++-----
> include/linux/usb/hcd.h | 3 ++
> 5 files changed, 80 insertions(+), 41 deletions(-)
>