Message ID | 20210419094534.9748-4-patrice.chotard@foss.st.com |
---|---|
State | Superseded |
Delegated to: | Lukasz Majewski |
Headers | show |
Series | cmd: bind: Fix driver binding | expand |
Hi Marek Can you have a look a this patch please ? Thanks Patrice On 4/19/21 11:45 AM, Patrice Chotard wrote: > Add usb_gadget_handle_interrupts(), usb_gadget_register_driver() > and usb_gadget_unregister_driver() to be able to test > binding usb gadget. > > Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com> > Cc: Marek Vasut <marex@denx.de> > Cc: Herbert Poetzl <herbert@13thfloor.at> > --- > > (no changes since v1) > > drivers/usb/host/usb-sandbox.c | 28 ++++++++++++++++++++++++++++ > 1 file changed, 28 insertions(+) > > diff --git a/drivers/usb/host/usb-sandbox.c b/drivers/usb/host/usb-sandbox.c > index d7cc92aa54..d1103dcb2e 100644 > --- a/drivers/usb/host/usb-sandbox.c > +++ b/drivers/usb/host/usb-sandbox.c > @@ -9,6 +9,13 @@ > #include <log.h> > #include <usb.h> > #include <dm/root.h> > +#include <linux/usb/gadget.h> > + > +struct sandbox_udc { > + struct usb_gadget gadget; > +}; > + > +struct sandbox_udc *this_controller; > > struct sandbox_usb_ctrl { > int rootdev; > @@ -117,6 +124,27 @@ static int sandbox_submit_int(struct udevice *bus, struct usb_device *udev, > return ret; > } > > +int usb_gadget_handle_interrupts(int index) > +{ > + return 0; > +} > + > +int usb_gadget_register_driver(struct usb_gadget_driver *driver) > +{ > + struct sandbox_udc *dev = this_controller; > + > + return driver->bind(&dev->gadget); > +} > + > +int usb_gadget_unregister_driver(struct usb_gadget_driver *driver) > +{ > + struct sandbox_udc *dev = this_controller; > + > + driver->unbind(&dev->gadget); > + > + return 0; > +} > + > static int sandbox_alloc_device(struct udevice *dev, struct usb_device *udev) > { > struct sandbox_usb_ctrl *ctrl = dev_get_priv(dev); >
On Mon, 19 Apr 2021 at 03:47, Patrice Chotard <patrice.chotard@foss.st.com> wrote: > > Add usb_gadget_handle_interrupts(), usb_gadget_register_driver() > and usb_gadget_unregister_driver() to be able to test > binding usb gadget. > > Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com> > Cc: Marek Vasut <marex@denx.de> > Cc: Herbert Poetzl <herbert@13thfloor.at> > --- > > (no changes since v1) > > drivers/usb/host/usb-sandbox.c | 28 ++++++++++++++++++++++++++++ > 1 file changed, 28 insertions(+) Reviewed-by: Simon Glass <sjg@chromium.org> But it looks like gadgets should be converted to DM properly?
diff --git a/drivers/usb/host/usb-sandbox.c b/drivers/usb/host/usb-sandbox.c index d7cc92aa54..d1103dcb2e 100644 --- a/drivers/usb/host/usb-sandbox.c +++ b/drivers/usb/host/usb-sandbox.c @@ -9,6 +9,13 @@ #include <log.h> #include <usb.h> #include <dm/root.h> +#include <linux/usb/gadget.h> + +struct sandbox_udc { + struct usb_gadget gadget; +}; + +struct sandbox_udc *this_controller; struct sandbox_usb_ctrl { int rootdev; @@ -117,6 +124,27 @@ static int sandbox_submit_int(struct udevice *bus, struct usb_device *udev, return ret; } +int usb_gadget_handle_interrupts(int index) +{ + return 0; +} + +int usb_gadget_register_driver(struct usb_gadget_driver *driver) +{ + struct sandbox_udc *dev = this_controller; + + return driver->bind(&dev->gadget); +} + +int usb_gadget_unregister_driver(struct usb_gadget_driver *driver) +{ + struct sandbox_udc *dev = this_controller; + + driver->unbind(&dev->gadget); + + return 0; +} + static int sandbox_alloc_device(struct udevice *dev, struct usb_device *udev) { struct sandbox_usb_ctrl *ctrl = dev_get_priv(dev);
Add usb_gadget_handle_interrupts(), usb_gadget_register_driver() and usb_gadget_unregister_driver() to be able to test binding usb gadget. Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com> Cc: Marek Vasut <marex@denx.de> Cc: Herbert Poetzl <herbert@13thfloor.at> --- (no changes since v1) drivers/usb/host/usb-sandbox.c | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+)