>EXTERNAL MAIL > > > >Hi, > >Pawel Laszczak <pawell@xxxxxxxxxxx> writes: >> diff --git a/include/linux/usb/ch9.h b/include/linux/usb/ch9.h >> index da82606be605..d388a3a5ab7e 100644 >> --- a/include/linux/usb/ch9.h >> +++ b/include/linux/usb/ch9.h >> @@ -70,4 +70,29 @@ extern enum usb_device_speed usb_get_maximum_speed(struct device *dev); >> */ >> extern const char *usb_state_string(enum usb_device_state state); >> >> +/** >> + * usb_decode_ctrl - Returns human readable representation of control request. >> + * @str: buffer to return a human-readable representation of control request. >> + * This buffer should have about 200 bytes. >> + * @size: size of str buffer. >> + * @bRequestType: matches the USB bmRequestType field >> + * @bRequest: matches the USB bRequest field >> + * @wValue: matches the USB wValue field (CPU byte order) >> + * @wIndex: matches the USB wIndex field (CPU byte order) >> + * @wLength: matches the USB wLength field (CPU byte order) >> + * >> + * Function returns decoded, formatted and human-readable description of >> + * control request packet. >> + * >> + * The usage scenario for this is for tracepoints, so function as a return >> + * use the same value as in parameters. This approach allows to use this >> + * function in TP_printk >> + * >> + * Important: wValue, wIndex, wLength parameters before invoking this function >> + * should be processed by le16_to_cpu macro. >> + */ >> +extern const char *usb_decode_ctrl(char *str, size_t size, __u8 bRequestType, >> + __u8 bRequest, __u16 wValue, __u16 wIndex, >> + __u16 wLength); >> + > >where's the stub when !TRACING? Right, I will add #ifdef CONFIG_TRACING ..... #endif > >-- >balbi