On Mon, Feb 10, 2020 at 08:29:22AM +0100, Benjamin Herrenschmidt wrote: > On Mon, 2020-02-10 at 02:48 +0000, Joel Stanley wrote: > > On Fri, 31 Jan 2020 at 22:22, <rentao.bupt@xxxxxxxxx> wrote: > > > > > > From: Tao Ren <rentao.bupt@xxxxxxxxx> > > > > > > Add AST2600 support in aspeed-vhub driver. There are 3 major differences > > > between AST2500 and AST2600 vhub: > > > - AST2600 supports 7 downstream ports while AST2500 supports 5. > > > - AST2600 supports 21 generic endpoints while AST2500 supports 15. > > > - EP0 data buffer's 8-byte DMA alignment restriction is removed from > > > AST2600. > > > > > > Signed-off-by: Tao Ren <rentao.bupt@xxxxxxxxx> > > > Reviewed-by: Andrew Jeffery <andrew@xxxxxxxx> > > Travelling at the moment so my review might be a bit delayed. Also for > some reason I missed your original submission, sorry about that, please > poke me next time if I don't reply within a couple of days ! No worries Ben and thanks for the review. I thought people was too busy during merge window :) > > One thing to look into as well is the 2600 has revived the "device > controller" which looks like a cut down version of a vhub device, so we > should break a bit more the linkage between vhub and the underlying > devices so the latter can be instanciated standalone... > > (Foor for thought, I'm not asking you to do that right now) Thanks for sharing your thought. I was actually curious why "device controller" was back. Anyways I feel it might be easier to break the linkage when we decide to add driver for the "device controller". Cheers, Tao > > Cheers, > Ben. > > > Reviewed-by: Joel Stanley <joel@xxxxxxxxx> > > > > > --- > > > drivers/usb/gadget/udc/aspeed-vhub/Kconfig | 4 ++-- > > > drivers/usb/gadget/udc/aspeed-vhub/core.c | 9 +++++++++ > > > 2 files changed, 11 insertions(+), 2 deletions(-) > > > > > > diff --git a/drivers/usb/gadget/udc/aspeed-vhub/Kconfig b/drivers/usb/gadget/udc/aspeed-vhub/Kconfig > > > index 83ba8a2eb6af..605500b19cf3 100644 > > > --- a/drivers/usb/gadget/udc/aspeed-vhub/Kconfig > > > +++ b/drivers/usb/gadget/udc/aspeed-vhub/Kconfig > > > @@ -4,5 +4,5 @@ config USB_ASPEED_VHUB > > > depends on ARCH_ASPEED || COMPILE_TEST > > > depends on USB_LIBCOMPOSITE > > > help > > > - USB peripheral controller for the Aspeed AST2500 family > > > - SoCs supporting the "vHub" functionality and USB2.0 > > > + USB peripheral controller for the Aspeed AST2400, AST2500 and > > > + AST2600 family SoCs supporting the "vHub" functionality and USB2.0 > > > diff --git a/drivers/usb/gadget/udc/aspeed-vhub/core.c b/drivers/usb/gadget/udc/aspeed-vhub/core.c > > > index 94081cc04113..c827bf420278 100644 > > > --- a/drivers/usb/gadget/udc/aspeed-vhub/core.c > > > +++ b/drivers/usb/gadget/udc/aspeed-vhub/core.c > > > @@ -42,6 +42,11 @@ static const struct ast_vhub_config ast2400_config = { > > > .max_epns = 15, > > > }; > > > > > > +static const struct ast_vhub_config ast2600_config = { > > > + .max_ports = 7, > > > + .max_epns = 21, > > > +}; > > > + > > > static const struct of_device_id ast_vhub_dt_ids[] = { > > > { > > > .compatible = "aspeed,ast2400-usb-vhub", > > > @@ -51,6 +56,10 @@ static const struct of_device_id ast_vhub_dt_ids[] = { > > > .compatible = "aspeed,ast2500-usb-vhub", > > > .data = &ast2400_config, > > > }, > > > + { > > > + .compatible = "aspeed,ast2600-usb-vhub", > > > + .data = &ast2600_config, > > > + }, > > > { } > > > }; > > > MODULE_DEVICE_TABLE(of, ast_vhub_dt_ids); > > > -- > > > 2.17.1 > > > >