Johan Hovold <johan@xxxxxxxxxx> > Sent: Saturday, May 22, 2021 4:07 PM [...] > > > + if (usb_endpoint_num(in) != 1) { > > > + dev_err(&intf->dev, "Invalid Rx Endpoint\n"); > > > > "Invalid number of Rx endpoints" > > Here it is the endpoint number (address) that is being checked so > "number of" would be wrong. > > That said, perhaps none of these checks are even needed a bit depending > on how the driver is implemented. That is, if it hardcodes the endpoint > addresses or uses the result from usb_find_common_endpoints() above > (which I realise now that it does not so these checks are probably still > needed). The purpose of the checks is to find out the fake devices. That is, even the device supports in, out, and interrupt endpoints, it is treated as fake or malicious device, if the addresses of these endpoints are wrong. Therefore, I would keep the checks. Best Regards, Hayes