1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #undef TRACE_SYSTEM 3 #define TRACE_SYSTEM usb 4 #undef TRACE_INCLUDE_PATH 5 #define TRACE_INCLUDE_PATH trace/hooks 6 #if !defined(_TRACE_HOOK_USB_H) || defined(TRACE_HEADER_MULTI_READ) 7 #define _TRACE_HOOK_USB_H 8 #include <trace/hooks/vendor_hooks.h> 9 /* 10 * Following tracepoints are not exported in tracefs and provide a 11 * mechanism for vendor modules to hook and extend functionality 12 */ 13 struct usb_device; 14 struct urb; 15 16 DECLARE_HOOK(android_vh_usb_new_device_added, 17 TP_PROTO(struct usb_device *udev, int *err), 18 TP_ARGS(udev, err)); 19 20 DECLARE_RESTRICTED_HOOK(android_rvh_usb_dev_suspend, 21 TP_PROTO(struct usb_device *udev, pm_message_t msg, int *bypass), 22 TP_ARGS(udev, msg, bypass), 1); 23 24 DECLARE_HOOK(android_vh_usb_dev_resume, 25 TP_PROTO(struct usb_device *udev, pm_message_t msg, int *bypass), 26 TP_ARGS(udev, msg, bypass)); 27 28 DECLARE_HOOK(android_vh_xhci_urb_suitable_bypass, 29 TP_PROTO(struct urb *urb, int *ret), 30 TP_ARGS(urb, ret)); 31 32 #endif /* _TRACE_HOOK_USB_H */ 33 /* This part must be outside protection */ 34 #include <trace/define_trace.h> 35