DF-5578 / prod_guard.diff
--- ufm_prod_guarded.c.orig +++ ufm_prod_guarded.c @@ -55,6 +55,17 @@ #include <bus/u4b/ufm_ioctl.h> +/* BEGIN DF-5578 harness guard (the ONLY modification vs production): + * reroute the EP0 transport (plain usbd_do_request macro, usbdi.h:511-512) + * to the cross-TU capture shim ufm_shim_request(), which reproduces the + * traced usbd_do_request_flags() completion semantics for an evil / silent + * Cypress FM radio. Everything else in this file is byte-identical to + * /usr/src/sys/bus/u4b/misc/ufm.c (sha256 845738f2...). */ +#undef usbd_do_request +extern usb_error_t ufm_shim_request(struct usb_device_request *, uint8_t *); +#define usbd_do_request(u, m, r, d) ufm_shim_request((r), (d)) +/* END DF-5578 harness guard */ + #define UFM_CMD0 0x00 #define UFM_CMD_SET_FREQ 0x01 #define UFM_CMD2 0x02 |