dm: usb: ehci: Implement get_max_xfer_size() operation

EHCD can handle any transfer length as long as there is enough free
heap space left, hence set the theoretical max number SIZE_MAX.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
This commit is contained in:
Bin Meng 2017-09-07 06:13:19 -07:00 committed by Marek Vasut
parent 022ceacaf8
commit a23aa66baa

View file

@ -1596,6 +1596,17 @@ static int ehci_destroy_int_queue(struct udevice *dev, struct usb_device *udev,
return _ehci_destroy_int_queue(udev, queue);
}
static int ehci_get_max_xfer_size(struct udevice *dev, size_t *size)
{
/*
* EHCD can handle any transfer length as long as there is enough
* free heap space left, hence set the theoretical max number here.
*/
*size = SIZE_MAX;
return 0;
}
int ehci_register(struct udevice *dev, struct ehci_hccr *hccr,
struct ehci_hcor *hcor, const struct ehci_ops *ops,
uint tweaks, enum usb_init_type init)
@ -1658,6 +1669,7 @@ struct dm_usb_ops ehci_usb_ops = {
.create_int_queue = ehci_create_int_queue,
.poll_int_queue = ehci_poll_int_queue,
.destroy_int_queue = ehci_destroy_int_queue,
.get_max_xfer_size = ehci_get_max_xfer_size,
};
#endif