On 5/9/21 11:25 PM, Oliver Fromme wrote:
22:56:30.540897 usbus1.5 SUBM-CTRL-EP=00000000,SPD=FULL,NFR=1,SLEN=8,IVAL=0
frame[0] WRITE 8 bytes
0000 21 0B 01 00 00 00 00 00 -- -- -- -- -- -- -- -- |!....... |
flags 0x10 <PROXY_BUFFER|0>
status 0xca1a3
After sending what appears like a HID set report request, the device
stops responding. Looks like a firmware bug.
Is it possible to upgrade the firmware on the touchscreen?
usb_error_t
usbd_req_set_protocol(struct usb_device *udev, struct mtx *mtx,
uint8_t iface_index, uint16_t report)
{
struct usb_interface *iface = usbd_get_iface(udev, iface_index);
struct usb_device_request req;
if ((iface == NULL) || (iface->idesc == NULL)) {
return (USB_ERR_INVAL);
}
DPRINTFN(5, "iface=%p, report=%d, endpt=%d\n",
iface, report, iface->idesc->bInterfaceNumber);
req.bmRequestType = UT_WRITE_CLASS_INTERFACE;
req.bRequest = UR_SET_PROTOCOL;
USETW(req.wValue, report);
req.wIndex[0] = iface->idesc->bInterfaceNumber;
req.wIndex[1] = 0;
USETW(req.wLength, 0);
return (usbd_do_request(udev, mtx, &req, 0));
}
--HPS
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "[email protected]"