usb: emul: Expose find_descriptor() as a public API

This can be useful outside of the sandbox usb emulation uclass
driver. Expose it as a public API with a proper prefix (usb_emul_).

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
This commit is contained in:
Bin Meng 2017-10-01 06:19:40 -07:00 committed by Marek Vasut
parent 84aa8536f0
commit 848436a48d
2 changed files with 13 additions and 3 deletions

View File

@ -52,7 +52,7 @@ static int usb_emul_get_string(struct usb_string *strings, int index,
return -EINVAL;
}
static struct usb_generic_descriptor **find_descriptor(
struct usb_generic_descriptor **usb_emul_find_descriptor(
struct usb_generic_descriptor **ptr, int type, int index)
{
debug("%s: type=%x, index=%d\n", __func__, type, index);
@ -91,8 +91,7 @@ static int usb_emul_get_descriptor(struct usb_dev_platdata *plat, int value,
length);
}
ptr = find_descriptor((struct usb_generic_descriptor **)plat->desc_list,
type, index);
ptr = usb_emul_find_descriptor(plat->desc_list, type, index);
if (!ptr) {
debug("%s: Could not find descriptor type %d, index %d\n",
__func__, type, index);

View File

@ -1055,6 +1055,17 @@ int usb_emul_find(struct udevice *bus, ulong pipe, int port1,
*/
int usb_emul_find_for_dev(struct udevice *dev, struct udevice **emulp);
/**
* usb_emul_find_descriptor() - Find a USB descriptor of a particular device
*
* @ptr: a pointer to a list of USB descriptor pointers
* @type: type of USB descriptor to find
* @index: if @type is USB_DT_CONFIG, this is the configuration value
* @return a pointer to the USB descriptor found, NULL if not found
*/
struct usb_generic_descriptor **usb_emul_find_descriptor(
struct usb_generic_descriptor **ptr, int type, int index);
/**
* usb_emul_reset() - Reset all emulators ready for use
*