Rev 3700 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3700 | Rev 3816 | ||
---|---|---|---|
Line 1373... | Line 1373... | ||
1373 | ; in: edi -> usb_pipe for target, ecx -> usb_pipe for config pipe, |
1373 | ; in: edi -> usb_pipe for target, ecx -> usb_pipe for config pipe, |
1374 | ; esi -> usb_controller, eax -> usb_gtd for the first TD, |
1374 | ; esi -> usb_controller, eax -> usb_gtd for the first TD, |
1375 | ; [ebp+12] = endpoint, [ebp+16] = maxpacket, [ebp+20] = type |
1375 | ; [ebp+12] = endpoint, [ebp+16] = maxpacket, [ebp+20] = type |
1376 | proc uhci_init_pipe |
1376 | proc uhci_init_pipe |
1377 | ; inherit some variables from the parent usb_open_pipe |
1377 | ; inherit some variables from the parent usb_open_pipe |
1378 | virtual at ebp+8 |
1378 | virtual at ebp-12 |
- | 1379 | .speed db ? |
|
- | 1380 | rb 3 |
|
- | 1381 | .bandwidth dd ? |
|
- | 1382 | .target dd ? |
|
- | 1383 | rd 2 |
|
1379 | .config_pipe dd ? |
1384 | .config_pipe dd ? |
1380 | .endpoint dd ? |
1385 | .endpoint dd ? |
1381 | .maxpacket dd ? |
1386 | .maxpacket dd ? |
1382 | .type dd ? |
1387 | .type dd ? |
1383 | .interval dd ? |
1388 | .interval dd ? |
Line 1411... | Line 1416... | ||
1411 | test byte [.endpoint], 80h |
1416 | test byte [.endpoint], 80h |
1412 | jz @f |
1417 | jz @f |
1413 | mov al, USB_PID_IN |
1418 | mov al, USB_PID_IN |
1414 | @@: |
1419 | @@: |
1415 | mov [edi+uhci_pipe.Token-sizeof.uhci_pipe], eax |
1420 | mov [edi+uhci_pipe.Token-sizeof.uhci_pipe], eax |
- | 1421 | bt eax, 20 |
|
- | 1422 | setc [.speed] |
|
1416 | ; 4. Initialize the first TD: |
1423 | ; 4. Initialize the first TD: |
1417 | ; copy Token from uhci_pipe.Token zeroing reserved bit 20, |
1424 | ; copy Token from uhci_pipe.Token zeroing reserved bit 20, |
1418 | ; set ControlStatus for future transfers, bit make it inactive, |
1425 | ; set ControlStatus for future transfers, bit make it inactive, |
1419 | ; set bit 0 in NextTD = "no next TD", |
1426 | ; set bit 0 in NextTD = "no next TD", |
1420 | ; zero OrigBufferInfo. |
1427 | ; zero OrigBufferInfo. |