[PATCH v1 0/4] support USB offload feature

Daehwan Jung posted 4 patches 4 years, 3 months ago
Only 0 patches received!
There is a newer version of this series
drivers/usb/host/xhci-exynos.c | 2025 ++++++++++++++++++++++++++++++++
drivers/usb/host/xhci-exynos.h |  150 +++
drivers/usb/host/xhci-hub.c    |    7 +
drivers/usb/host/xhci-mem.c    |  160 ++-
drivers/usb/host/xhci-plat.c   |   43 +-
drivers/usb/host/xhci-plat.h   |    8 +
drivers/usb/host/xhci-ring.c   |   22 +-
drivers/usb/host/xhci.c        |  104 +-
drivers/usb/host/xhci.h        |   52 +
9 files changed, 2543 insertions(+), 28 deletions(-)
create mode 100644 drivers/usb/host/xhci-exynos.c
create mode 100644 drivers/usb/host/xhci-exynos.h
[PATCH v1 0/4] support USB offload feature
Posted by Daehwan Jung 4 years, 3 months ago
This patchset is for USB offload feature, which makes Co-processor to use
some memories of xhci. Especially it's useful for USB Audio scenario.
Audio stream would get shortcut because Co-processor directly write/read
data in xhci memories. It could get speed-up using faster memory like SRAM.
That's why this also gives vendors flexibilty of memory management.
Below pathches have been merged in AOSP kernel(android12-5.10) and I put
together and split into 3 patches. Plus let me add user(xhci-exynos) module 
to see how user could use it. 

To sum up, it's for providing xhci memories to Co-Processor.
It would cover DCBAA, Device Context, Tranfer Ring, Event Ring, ERST.
It needs xhci hooks and to export some xhci symbols.

ANDROID: usb: host: fix slab-out-of-bounds in xhci_vendor_get_ops
ANDROID: usb: export built-in tracepoint functions
ANDROID: usb: host: Use old init scheme when hook unavailable
ANDROID: usb: host: free the offload TR by vendor hook
ANDROID: usb: host: xhci: provide function prototype for xhci_address_device
ANDROID: usb: host: add bus_suspend/bus_resume to xhci overrides
ANDROID: usb: host: add address_device to xhci overrides
ANDROID: usb: host: add max packet parameter on alloc_transfer_ring hook
ANDROID: usb: host: add xhci hooks for vendor specific container context
ANDROID: usb: host: export xhci symbols for ring management
ANDROID: usb: host: export additional xhci symbols for ring management
FROMLIST: usb: xhci-plat: add xhci_plat_priv_overwrite
FROMLIST: usb: host: export symbols for xhci hooks usage
FROMLIST: usb: host: add xhci hooks for USB offload

Below are owners of patches.

Howard Yen <howardyen@google.com>
Jack Pham <jackp@codeaurora.org>
Puma Hsu <pumahsu@google.com>
J. Avila <elavila@google.com>
chihhao.chen <chihhao.chen@mediatek.com>

Daehwan Jung (4):
  usb: host: export symbols for xhci hooks usage
  usb: host: add xhci hooks for USB offload
  usb: host: add some to xhci overrides for USB offload
  usb: host: add xhci-exynos module

 drivers/usb/host/xhci-exynos.c | 2025 ++++++++++++++++++++++++++++++++
 drivers/usb/host/xhci-exynos.h |  150 +++
 drivers/usb/host/xhci-hub.c    |    7 +
 drivers/usb/host/xhci-mem.c    |  160 ++-
 drivers/usb/host/xhci-plat.c   |   43 +-
 drivers/usb/host/xhci-plat.h   |    8 +
 drivers/usb/host/xhci-ring.c   |   22 +-
 drivers/usb/host/xhci.c        |  104 +-
 drivers/usb/host/xhci.h        |   52 +
 9 files changed, 2543 insertions(+), 28 deletions(-)
 create mode 100644 drivers/usb/host/xhci-exynos.c
 create mode 100644 drivers/usb/host/xhci-exynos.h

-- 
2.31.1
Re: [PATCH v1 0/4] support USB offload feature
Posted by Greg Kroah-Hartman 4 years, 3 months ago
On Fri, Mar 04, 2022 at 03:23:54PM +0900, Daehwan Jung wrote:
> This patchset is for USB offload feature, which makes Co-processor to use
> some memories of xhci. Especially it's useful for USB Audio scenario.
> Audio stream would get shortcut because Co-processor directly write/read
> data in xhci memories. It could get speed-up using faster memory like SRAM.
> That's why this also gives vendors flexibilty of memory management.
> Below pathches have been merged in AOSP kernel(android12-5.10) and I put
> together and split into 3 patches. Plus let me add user(xhci-exynos) module 
> to see how user could use it. 
> 
> To sum up, it's for providing xhci memories to Co-Processor.
> It would cover DCBAA, Device Context, Tranfer Ring, Event Ring, ERST.
> It needs xhci hooks and to export some xhci symbols.
> 
> ANDROID: usb: host: fix slab-out-of-bounds in xhci_vendor_get_ops
> ANDROID: usb: export built-in tracepoint functions
> ANDROID: usb: host: Use old init scheme when hook unavailable
> ANDROID: usb: host: free the offload TR by vendor hook
> ANDROID: usb: host: xhci: provide function prototype for xhci_address_device
> ANDROID: usb: host: add bus_suspend/bus_resume to xhci overrides
> ANDROID: usb: host: add address_device to xhci overrides
> ANDROID: usb: host: add max packet parameter on alloc_transfer_ring hook
> ANDROID: usb: host: add xhci hooks for vendor specific container context
> ANDROID: usb: host: export xhci symbols for ring management
> ANDROID: usb: host: export additional xhci symbols for ring management
> FROMLIST: usb: xhci-plat: add xhci_plat_priv_overwrite
> FROMLIST: usb: host: export symbols for xhci hooks usage
> FROMLIST: usb: host: add xhci hooks for USB offload

What does that list of text mean?  You are only submitting 4 patches
here, not that many.

> 
> Below are owners of patches.
> 
> Howard Yen <howardyen@google.com>
> Jack Pham <jackp@codeaurora.org>
> Puma Hsu <pumahsu@google.com>
> J. Avila <elavila@google.com>
> chihhao.chen <chihhao.chen@mediatek.com>

What do you mean by this?  Did you loose authorship of the code you just
submitted?  That's not ok.  You always have to properly credit the
creators of the changes you submit to us for obvious legal reasons.

Please fix up and resend this series properly.

thanks,

greg k-h
Re: [PATCH v1 0/4] support USB offload feature
Posted by Randy Dunlap 4 years, 3 months ago

On 3/3/22 23:39, Greg Kroah-Hartman wrote:
> On Fri, Mar 04, 2022 at 03:23:54PM +0900, Daehwan Jung wrote:
>> This patchset is for USB offload feature, which makes Co-processor to use
>> some memories of xhci. Especially it's useful for USB Audio scenario.
>> Audio stream would get shortcut because Co-processor directly write/read
>> data in xhci memories. It could get speed-up using faster memory like SRAM.
>> That's why this also gives vendors flexibilty of memory management.
>> Below pathches have been merged in AOSP kernel(android12-5.10) and I put
>> together and split into 3 patches. Plus let me add user(xhci-exynos) module 
>> to see how user could use it. 
>>
>> To sum up, it's for providing xhci memories to Co-Processor.
>> It would cover DCBAA, Device Context, Tranfer Ring, Event Ring, ERST.
>> It needs xhci hooks and to export some xhci symbols.
>>
>> ANDROID: usb: host: fix slab-out-of-bounds in xhci_vendor_get_ops
>> ANDROID: usb: export built-in tracepoint functions
>> ANDROID: usb: host: Use old init scheme when hook unavailable
>> ANDROID: usb: host: free the offload TR by vendor hook
>> ANDROID: usb: host: xhci: provide function prototype for xhci_address_device
>> ANDROID: usb: host: add bus_suspend/bus_resume to xhci overrides
>> ANDROID: usb: host: add address_device to xhci overrides
>> ANDROID: usb: host: add max packet parameter on alloc_transfer_ring hook
>> ANDROID: usb: host: add xhci hooks for vendor specific container context
>> ANDROID: usb: host: export xhci symbols for ring management
>> ANDROID: usb: host: export additional xhci symbols for ring management
>> FROMLIST: usb: xhci-plat: add xhci_plat_priv_overwrite
>> FROMLIST: usb: host: export symbols for xhci hooks usage
>> FROMLIST: usb: host: add xhci hooks for USB offload
> 
> What does that list of text mean?  You are only submitting 4 patches
> here, not that many.
> 
>>
>> Below are owners of patches.
>>
>> Howard Yen <howardyen@google.com>
>> Jack Pham <jackp@codeaurora.org>
>> Puma Hsu <pumahsu@google.com>
>> J. Avila <elavila@google.com>
>> chihhao.chen <chihhao.chen@mediatek.com>
> 
> What do you mean by this?  Did you loose authorship of the code you just
> submitted?  That's not ok.  You always have to properly credit the
> creators of the changes you submit to us for obvious legal reasons.
> 
> Please fix up and resend this series properly.

Also: Greg might have received the full patch series, but I didn't, so I
checked lore.kernel.org/linux-usb/, and it did not either, so it appears
that there is a problem with sending the full series.

-- 
~Randy
Re: [PATCH v1 0/4] support USB offload feature
Posted by Krzysztof Kozlowski 4 years, 3 months ago
On 04/03/2022 16:27, Randy Dunlap wrote:
> 
> 
> On 3/3/22 23:39, Greg Kroah-Hartman wrote:
>> On Fri, Mar 04, 2022 at 03:23:54PM +0900, Daehwan Jung wrote:
>>> This patchset is for USB offload feature, which makes Co-processor to use
>>> some memories of xhci. Especially it's useful for USB Audio scenario.
>>> Audio stream would get shortcut because Co-processor directly write/read
>>> data in xhci memories. It could get speed-up using faster memory like SRAM.
>>> That's why this also gives vendors flexibilty of memory management.
>>> Below pathches have been merged in AOSP kernel(android12-5.10) and I put
>>> together and split into 3 patches. Plus let me add user(xhci-exynos) module 
>>> to see how user could use it. 
>>>
>>> To sum up, it's for providing xhci memories to Co-Processor.
>>> It would cover DCBAA, Device Context, Tranfer Ring, Event Ring, ERST.
>>> It needs xhci hooks and to export some xhci symbols.
>>>
>>> ANDROID: usb: host: fix slab-out-of-bounds in xhci_vendor_get_ops
>>> ANDROID: usb: export built-in tracepoint functions
>>> ANDROID: usb: host: Use old init scheme when hook unavailable
>>> ANDROID: usb: host: free the offload TR by vendor hook
>>> ANDROID: usb: host: xhci: provide function prototype for xhci_address_device
>>> ANDROID: usb: host: add bus_suspend/bus_resume to xhci overrides
>>> ANDROID: usb: host: add address_device to xhci overrides
>>> ANDROID: usb: host: add max packet parameter on alloc_transfer_ring hook
>>> ANDROID: usb: host: add xhci hooks for vendor specific container context
>>> ANDROID: usb: host: export xhci symbols for ring management
>>> ANDROID: usb: host: export additional xhci symbols for ring management
>>> FROMLIST: usb: xhci-plat: add xhci_plat_priv_overwrite
>>> FROMLIST: usb: host: export symbols for xhci hooks usage
>>> FROMLIST: usb: host: add xhci hooks for USB offload
>>
>> What does that list of text mean?  You are only submitting 4 patches
>> here, not that many.
>>
>>>
>>> Below are owners of patches.
>>>
>>> Howard Yen <howardyen@google.com>
>>> Jack Pham <jackp@codeaurora.org>
>>> Puma Hsu <pumahsu@google.com>
>>> J. Avila <elavila@google.com>
>>> chihhao.chen <chihhao.chen@mediatek.com>
>>
>> What do you mean by this?  Did you loose authorship of the code you just
>> submitted?  That's not ok.  You always have to properly credit the
>> creators of the changes you submit to us for obvious legal reasons.
>>
>> Please fix up and resend this series properly.
> 
> Also: Greg might have received the full patch series, but I didn't, so I
> checked lore.kernel.org/linux-usb/, and it did not either, so it appears
> that there is a problem with sending the full series.

Yeah, lore did not get anything more than cover letter. What's more
interesting, the cover letter mention exynos:
  drivers/usb/host/xhci-exynos.c | 2025 ++++++++++++++++++++++++++++++++
so get_maintainers.pl should point you to additional people and lists,
which are not present here.

What is even more interesting, such file
"drivers/usb/host/xhci-exynos.c" does not exist... which could explain
missing CC above, but raises question what is this cover letter from? Is
it still Linux kernel or some other project?

Best regards,
Krzysztof