Even though the specs say the toggle carry field contains the value of the last
retired descriptor, it actually contains the value that is to be used next. Confirmed that by cross-referencing FreeBSD. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32531 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -1036,7 +1036,7 @@ OHCI::_FinishTransfers()
|
|||||||
// get the last data toggle and store it for next time
|
// get the last data toggle and store it for next time
|
||||||
transfer->transfer->TransferPipe()->SetDataToggle(
|
transfer->transfer->TransferPipe()->SetDataToggle(
|
||||||
(transfer->endpoint->head_physical_descriptor
|
(transfer->endpoint->head_physical_descriptor
|
||||||
& OHCI_ENDPOINT_TOGGLE_CARRY) == 0);
|
& OHCI_ENDPOINT_TOGGLE_CARRY) != 0);
|
||||||
|
|
||||||
if (transfer->transfer->IsFragmented()) {
|
if (transfer->transfer->IsFragmented()) {
|
||||||
// this transfer may still have data left
|
// this transfer may still have data left
|
||||||
|
|||||||
Reference in New Issue
Block a user