Re: [PATCH v7 0/6] usb: Support USB 3.2 multi-lanes

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

 



On Fri, Feb 05, 2021 at 02:39:41AM +0000, Thinh Nguyen wrote:
> Hi Felipe, Greg,
> 
> Thinh Nguyen wrote:
> > A USB SuperSpeed Plus device may operate at different speed and lane count
> > (i.e. gen2x2, gen1x2, or gen2x1). The DWC_usb32 IP supports SuperSpeed Plus
> > gen2x2. To support this, this series update a few things to the USB gadget
> > stack and dwc3 driver:
> >
> > * Accept and parse new maximum_speed devicetree property strings
> > * Introduce enum usb_ssp_rate to describe the speed in SuperSpeed Plus genXxY
> > * Capture the connected and max supported usb_ssp_rate
> > * Report the device sublink speeds base on the usb_ssp_rate in the BOS
> >   descriptor
> > * Introduce gadget ops to select SuperSpeed Plus various transfer rate and lane
> >   count
> > * Update dwc3 driver to support the above changes
> >
> > Changes in v7:
> >  - Greg picked up the first few patches of the series to his usb-testing
> >    branch. Rebase the remaining patches on Greg's usb-testing branch
> >
> > Changes in v6:
> >  - Rebase on Greg's usb-testing branch
> >  - Update cover letter and title since there are many updates
> >    * Previous version 5: https://lore.kernel.org/linux-usb/cover.1601001199.git.Thinh.Nguyen@xxxxxxxxxxxx/
> >  - To simplify things, use usb_ssp_rate enum to specify the signaling rate
> >    generation and lane count instead of separately tracking them.
> >  - Convert the sublink speed attributes to macros and move it to uapi
> >  - Remove usb_sublink_speed struct
> >  - Remove "usb: dwc3: gadget: Report sublink speed capability"
> >  - Update dwc3 to support the new changes
> >
> > Changes in v5:
> >  - Rebase on Felipe's testing/next branch
> >  - Changed Signed-off-by email to match From: email header
> >  - Add Rob's Reviewed-by
> >
> > Changes in v4:
> >  - Instead of using a single function to parse "maximum-speed" property for
> >    speed, gen X, and number of lanes, split those tasks to separate common
> >    functions
> >  - Revise DWC3 driver to use those new common functions
> >  - Fix checkpatch warnings for using "unsigned" rather than "unsigned int" and
> >    missing identifier name in udc_set_num_lanes_and_speed gadget ops
> >
> > Changes in v3:
> >  - Remove "num-lanes" and "lane-speed-mantissa-gbps" common properties
> >  - Remove "num-lanes" and "lane-speed-mantissa-gbps" properties validation in dwc3
> >  - Update "maximum-speed" to support variations of SSP Gen X x Y
> >  - Update common function to parse new strings for "maximum-speed"
> >  - Update commit messages for the new changes
> >
> > Changes in v2:
> >  - Move usb_sublink_speed attribute struct and enum to include/linux/usb/ch9.h
> >  - Use "num-lanes" and "lane-speed-mantissa-gbps" as common properties instead
> >  - Add common functions to get num-lanes and lsm properties
> >  - Fix missing gen1x2 sublink speed attribute check report in dwc3
> >
> >
> > Thinh Nguyen (6):
> >   dt-binding: usb: Include USB SSP rates in GenXxY
> >   usb: common: Parse for USB SSP genXxY
> >   usb: dwc3: core: Check maximum_speed SSP genXxY
> >   usb: dwc3: gadget: Implement setting of SSP rate
> >   usb: dwc3: gadget: Track connected SSP rate and lane count
> >   usb: dwc3: gadget: Set speed only up to the max supported
> >
> >  .../devicetree/bindings/usb/usb.yaml          |  3 +
> >  drivers/usb/common/common.c                   | 26 +++++-
> >  drivers/usb/dwc3/core.c                       | 37 +++++++++
> >  drivers/usb/dwc3/core.h                       |  9 +++
> >  drivers/usb/dwc3/gadget.c                     | 80 ++++++++++++++++++-
> >  include/linux/usb/ch9.h                       | 11 +++
> >  6 files changed, 162 insertions(+), 4 deletions(-)
> >
> >
> > base-commit: 7a79f1f7f7e75e532c5a803ab3ebf42a3e79497c
> 
> Let me know if there's any issue with these remaining patches. It'd be
> great if they can go on the "next" branch at some point.

I was waiting for Rob's review of the dt changes...



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux