Skip to content

Commit

Permalink
Don't set epAttribs to 0, as this will set bmNakPower to 0 as well. I…
Browse files Browse the repository at this point in the history
…nstead set bmSndToggle and bmRcvToggle explicit to 0.

Fixes: #184
  • Loading branch information
Lauszus committed Nov 17, 2015
1 parent 4266a5c commit fb723fc
Show file tree
Hide file tree
Showing 15 changed files with 44 additions and 24 deletions.
3 changes: 2 additions & 1 deletion BTD.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -290,7 +290,8 @@ void BTD::Initialize() {
for(i = 0; i < BTD_MAX_ENDPOINTS; i++) {
epInfo[i].epAddr = 0;
epInfo[i].maxPktSize = (i) ? 0 : 8;
epInfo[i].epAttribs = 0;
epInfo[i].bmSndToggle = 0;
epInfo[i].bmRcvToggle = 0;
epInfo[i].bmNakPower = (i) ? USB_NAK_NOWAIT : USB_NAK_MAX_POWER;
}
for(i = 0; i < BTD_NUM_SERVICES; i++) {
Expand Down
3 changes: 2 additions & 1 deletion PS3USB.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,8 @@ bPollEnable(false) // don't start polling before dongle is connected
for(uint8_t i = 0; i < PS3_MAX_ENDPOINTS; i++) {
epInfo[i].epAddr = 0;
epInfo[i].maxPktSize = (i) ? 0 : 8;
epInfo[i].epAttribs = 0;
epInfo[i].bmSndToggle = 0;
epInfo[i].bmRcvToggle = 0;
epInfo[i].bmNakPower = (i) ? USB_NAK_NOWAIT : USB_NAK_MAX_POWER;
}

Expand Down
3 changes: 2 additions & 1 deletion Usb.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -663,7 +663,8 @@ uint8_t USB::Configuring(uint8_t parent, uint8_t port, bool lowspeed) {

epInfo.epAddr = 0;
epInfo.maxPktSize = 8;
epInfo.epAttribs = 0;
epInfo.bmSndToggle = 0;
epInfo.bmRcvToggle = 0;
epInfo.bmNakPower = USB_NAK_MAX_POWER;

//delay(2000);
Expand Down
3 changes: 2 additions & 1 deletion XBOXOLD.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,8 @@ bPollEnable(false) { // don't start polling before dongle is connected
for(uint8_t i = 0; i < XBOX_MAX_ENDPOINTS; i++) {
epInfo[i].epAddr = 0;
epInfo[i].maxPktSize = (i) ? 0 : 8;
epInfo[i].epAttribs = 0;
epInfo[i].bmSndToggle = 0;
epInfo[i].bmRcvToggle = 0;
epInfo[i].bmNakPower = (i) ? USB_NAK_NOWAIT : USB_NAK_MAX_POWER;
}

Expand Down
3 changes: 2 additions & 1 deletion XBOXONE.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,8 @@ bPollEnable(false) { // don't start polling before dongle is connected
for(uint8_t i = 0; i < XBOX_MAX_ENDPOINTS; i++) {
epInfo[i].epAddr = 0;
epInfo[i].maxPktSize = (i) ? 0 : 8;
epInfo[i].epAttribs = 0;
epInfo[i].bmSndToggle = 0;
epInfo[i].bmRcvToggle = 0;
epInfo[i].bmNakPower = (i) ? USB_NAK_NOWAIT : USB_NAK_MAX_POWER;
}

Expand Down
3 changes: 2 additions & 1 deletion XBOXRECV.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,8 @@ bPollEnable(false) { // don't start polling before dongle is connected
for(uint8_t i = 0; i < XBOX_MAX_ENDPOINTS; i++) {
epInfo[i].epAddr = 0;
epInfo[i].maxPktSize = (i) ? 0 : 8;
epInfo[i].epAttribs = 0;
epInfo[i].bmSndToggle = 0;
epInfo[i].bmRcvToggle = 0;
epInfo[i].bmNakPower = (i) ? USB_NAK_NOWAIT : USB_NAK_MAX_POWER;
}

Expand Down
3 changes: 2 additions & 1 deletion XBOXUSB.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,8 @@ bPollEnable(false) { // don't start polling before dongle is connected
for(uint8_t i = 0; i < XBOX_MAX_ENDPOINTS; i++) {
epInfo[i].epAddr = 0;
epInfo[i].maxPktSize = (i) ? 0 : 8;
epInfo[i].epAttribs = 0;
epInfo[i].bmSndToggle = 0;
epInfo[i].bmRcvToggle = 0;
epInfo[i].bmNakPower = (i) ? USB_NAK_NOWAIT : USB_NAK_MAX_POWER;
}

Expand Down
3 changes: 2 additions & 1 deletion address.h
Original file line number Diff line number Diff line change
Expand Up @@ -169,7 +169,8 @@ class AddressPoolImpl : public AddressPool {
thePool[0].epinfo = &dev0ep;
dev0ep.epAddr = 0;
dev0ep.maxPktSize = 8;
dev0ep.epAttribs = 0; //set DATA0/1 toggles to 0
dev0ep.bmSndToggle = 0; // Set DATA0/1 toggles to 0
dev0ep.bmRcvToggle = 0;
dev0ep.bmNakPower = USB_NAK_MAX_POWER;

InitAllAddresses();
Expand Down
3 changes: 2 additions & 1 deletion adk.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,8 @@ ready(false) {
for(uint8_t i = 0; i < ADK_MAX_ENDPOINTS; i++) {
epInfo[i].epAddr = 0;
epInfo[i].maxPktSize = (i) ? 0 : 8;
epInfo[i].epAttribs = 0;
epInfo[i].bmSndToggle = 0;
epInfo[i].bmRcvToggle = 0;
epInfo[i].bmNakPower = (i) ? USB_NAK_NOWAIT : USB_NAK_MAX_POWER;
}//for(uint8_t i=0; i<ADK_MAX_ENDPOINTS; i++...

Expand Down
6 changes: 4 additions & 2 deletions cdcacm.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,8 @@ ready(false) {
for(uint8_t i = 0; i < ACM_MAX_ENDPOINTS; i++) {
epInfo[i].epAddr = 0;
epInfo[i].maxPktSize = (i) ? 0 : 8;
epInfo[i].epAttribs = 0;
epInfo[i].bmSndToggle = 0;
epInfo[i].bmRcvToggle = 0;
epInfo[i].bmNakPower = (i == epDataInIndex) ? USB_NAK_NOWAIT : USB_NAK_MAX_POWER;

}
Expand Down Expand Up @@ -247,7 +248,8 @@ void ACM::EndpointXtract(uint8_t conf, uint8_t iface, uint8_t alt, uint8_t proto
// Fill in the endpoint info structure
epInfo[index].epAddr = (pep->bEndpointAddress & 0x0F);
epInfo[index].maxPktSize = (uint8_t)pep->wMaxPacketSize;
epInfo[index].epAttribs = 0;
epInfo[index].bmSndToggle = 0;
epInfo[index].bmRcvToggle = 0;

bNumEP++;

Expand Down
6 changes: 4 additions & 2 deletions cdcftdi.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,8 @@ wFTDIType(0) {
for(uint8_t i = 0; i < FTDI_MAX_ENDPOINTS; i++) {
epInfo[i].epAddr = 0;
epInfo[i].maxPktSize = (i) ? 0 : 8;
epInfo[i].epAttribs = 0;
epInfo[i].bmSndToggle = 0;
epInfo[i].bmRcvToggle = 0;
epInfo[i].bmNakPower = (i==epDataInIndex) ? USB_NAK_NOWAIT: USB_NAK_MAX_POWER;
}
if(pUsb)
Expand Down Expand Up @@ -227,7 +228,8 @@ void FTDI::EndpointXtract(uint8_t conf, uint8_t iface, uint8_t alt, uint8_t prot
// Fill in the endpoint info structure
epInfo[index].epAddr = (pep->bEndpointAddress & 0x0F);
epInfo[index].maxPktSize = (uint8_t)pep->wMaxPacketSize;
epInfo[index].epAttribs = 0;
epInfo[index].bmSndToggle = 0;
epInfo[index].bmRcvToggle = 0;

bNumEP++;

Expand Down
6 changes: 4 additions & 2 deletions hidboot.h
Original file line number Diff line number Diff line change
Expand Up @@ -270,7 +270,8 @@ void HIDBoot<BOOT_PROTOCOL>::Initialize() {
for(int i = 0; i < totalEndpoints(BOOT_PROTOCOL); i++) {
epInfo[i].epAddr = 0;
epInfo[i].maxPktSize = (i) ? 0 : 8;
epInfo[i].epAttribs = 0;
epInfo[i].bmSndToggle = 0;
epInfo[i].bmRcvToggle = 0;
epInfo[i].bmNakPower = (i) ? USB_NAK_NOWAIT : USB_NAK_MAX_POWER;
}
bNumEP = 1;
Expand Down Expand Up @@ -546,7 +547,8 @@ void HIDBoot<BOOT_PROTOCOL>::EndpointXtract(uint8_t conf, uint8_t iface, uint8_t
// Fill in the endpoint info structure
epInfo[bNumEP].epAddr = (pep->bEndpointAddress & 0x0F);
epInfo[bNumEP].maxPktSize = (uint8_t)pep->wMaxPacketSize;
epInfo[bNumEP].epAttribs = 0;
epInfo[bNumEP].bmSndToggle = 0;
epInfo[bNumEP].bmRcvToggle = 0;
epInfo[bNumEP].bmNakPower = USB_NAK_NOWAIT;
bNumEP++;

Expand Down
6 changes: 4 additions & 2 deletions hiduniversal.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,8 @@ void HIDUniversal::Initialize() {
for(uint8_t i = 0; i < totalEndpoints; i++) {
epInfo[i].epAddr = 0;
epInfo[i].maxPktSize = (i) ? 0 : 8;
epInfo[i].epAttribs = 0;
epInfo[i].bmSndToggle = 0;
epInfo[i].bmRcvToggle = 0;
epInfo[i].bmNakPower = (i) ? USB_NAK_NOWAIT : USB_NAK_MAX_POWER;
}
bNumEP = 1;
Expand Down Expand Up @@ -323,7 +324,8 @@ void HIDUniversal::EndpointXtract(uint8_t conf, uint8_t iface, uint8_t alt, uint
// Fill in the endpoint info structure
epInfo[bNumEP].epAddr = (pep->bEndpointAddress & 0x0F);
epInfo[bNumEP].maxPktSize = (uint8_t)pep->wMaxPacketSize;
epInfo[bNumEP].epAttribs = 0;
epInfo[bNumEP].bmSndToggle = 0;
epInfo[bNumEP].bmRcvToggle = 0;
epInfo[bNumEP].bmNakPower = USB_NAK_NOWAIT;

// Fill in the endpoint index list
Expand Down
11 changes: 6 additions & 5 deletions masstorage.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -555,7 +555,8 @@ void BulkOnly::EndpointXtract(uint8_t conf, uint8_t iface, uint8_t alt, uint8_t
// Fill in the endpoint info structure
epInfo[index].epAddr = (pep->bEndpointAddress & 0x0F);
epInfo[index].maxPktSize = (uint8_t)pep->wMaxPacketSize;
epInfo[index].epAttribs = 0;
epInfo[index].bmSndToggle = 0;
epInfo[index].bmRcvToggle = 0;

bNumEP++;

Expand All @@ -574,7 +575,8 @@ void BulkOnly::EndpointXtract(uint8_t conf, uint8_t iface, uint8_t alt, uint8_t
// Fill in the endpoint info structure
epInfo[index].epAddr = (pep->bEndpointAddress & 0x0F);
epInfo[index].maxPktSize = (uint8_t)pep->wMaxPacketSize;
epInfo[index].epAttribs = 0;
epInfo[index].bmSndToggle = 0;
epInfo[index].bmRcvToggle = 0;
bNumEP++;
Expand Down Expand Up @@ -850,7 +852,6 @@ uint8_t BulkOnly::ClearEpHalt(uint8_t index) {
}
epInfo[index].bmSndToggle = 0;
epInfo[index].bmRcvToggle = 0;
// epAttribs = 0;
return 0;
}

Expand Down Expand Up @@ -890,8 +891,8 @@ void BulkOnly::ClearAllEP() {
for(uint8_t i = 0; i < MASS_MAX_ENDPOINTS; i++) {
epInfo[i].epAddr = 0;
epInfo[i].maxPktSize = (i) ? 0 : 8;
epInfo[i].epAttribs = 0;

epInfo[i].bmSndToggle = 0;
epInfo[i].bmRcvToggle = 0;
epInfo[i].bmNakPower = USB_NAK_DEFAULT;
}

Expand Down
6 changes: 4 additions & 2 deletions usbhub.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,14 @@ qNextPollTime(0),
bPollEnable(false) {
epInfo[0].epAddr = 0;
epInfo[0].maxPktSize = 8;
epInfo[0].epAttribs = 0;
epInfo[0].bmSndToggle = 0;
epInfo[0].bmRcvToggle = 0;
epInfo[0].bmNakPower = USB_NAK_MAX_POWER;

epInfo[1].epAddr = 1;
epInfo[1].maxPktSize = 8; //kludge
epInfo[1].epAttribs = 0;
epInfo[1].bmSndToggle = 0;
epInfo[1].bmRcvToggle = 0;
epInfo[1].bmNakPower = USB_NAK_NOWAIT;

if(pUsb)
Expand Down

0 comments on commit fb723fc

Please sign in to comment.