Don't return Unknown device if a PS3 controller is plugged in

This commit is contained in:
Kristian Sloth Lauszus 2013-09-12 22:12:13 +02:00
parent 9e1ea2ac1b
commit 5e97ec6a51

12
BTD.cpp
View file

@ -110,15 +110,11 @@ uint8_t BTD::Init(uint8_t parent, uint8_t port, bool lowspeed) {
// Assign new address to the device
rcode = pUsb->setAddr(0, 0, bAddress);
if (rcode) {
//p->lowspeed = false;
//addrPool.FreeAddress(bAddress);
//bAddress = 0;
#ifdef DEBUG_USB_HOST
Notify(PSTR("\r\nsetAddr: "), 0x80);
D_PrintHex<uint8_t > (rcode, 0x80);
#endif
goto Fail;
//return rcode;
}
#ifdef EXTRADEBUG
Notify(PSTR("\r\nAddr: "), 0x80);
@ -177,12 +173,10 @@ uint8_t BTD::Init(uint8_t parent, uint8_t port, bool lowspeed) {
#endif
}
//rcode =
pUsb->setConf(bAddress, epInfo[ BTD_CONTROL_PIPE ].epAddr, 0); // Reset configuration value
goto FailUnknownDevice;
//pUsb->setAddr(bAddress, 0, 0); // Reset address
//Release(); // Release device
//return USB_DEV_CONFIG_ERROR_DEVICE_NOT_SUPPORTED; // Return
pUsb->setAddr(bAddress, 0, 0); // Reset address
Release(); // Release device
return USB_DEV_CONFIG_ERROR_DEVICE_NOT_SUPPORTED; // Return
} else {
num_of_conf = ((USB_DEVICE_DESCRIPTOR*)buf)->bNumConfigurations;