mbox series

[v4,0/3] prerequisites for device reserved local mem rework

Message ID 20190516114721.27694-1-laurentiu.tudor@nxp.com (mailing list archive)
Headers show
Series prerequisites for device reserved local mem rework | expand

Message

Laurentiu Tudor May 16, 2019, 11:47 a.m. UTC
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.

Thank you!

For context, see thread here: https://lkml.org/lkml/2019/4/22/357

Changes in v4:
 - created mapping for local mem
 - fix genalloc misuse

Changes in v3:
 - rearranged calls into genalloc simplifying the code a bit (Christoph)
 - dropped RFC prefix

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     | 15 +++++---
 drivers/usb/host/ohci-hcd.c   | 23 +++++++++---
 drivers/usb/host/ohci-sm501.c | 66 +++++++++++++++++++++--------------
 drivers/usb/host/ohci-tmio.c  | 32 ++++++++++++-----
 include/linux/usb/hcd.h       |  3 ++
 5 files changed, 95 insertions(+), 44 deletions(-)