usb: sandbox: Add gadget callbacks

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>
Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Patrice Chotard 2021-09-10 16:16:22 +02:00
parent 9d591106dc
commit 4c3dc6f69a

View File

@ -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);