Subversion Repositories Kolibri OS

Rev

Rev 3598 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3598 Rev 3653
Line 430... Line 430...
430
; Pipe is removing, update the corresponding lists.
430
; Pipe is removing, update the corresponding lists.
431
; We do not reorder anything, so just update book-keeping variable
431
; We do not reorder anything, so just update book-keeping variable
432
; in the list header.
432
; in the list header.
433
proc ehci_hs_interrupt_list_unlink
433
proc ehci_hs_interrupt_list_unlink
434
; get target list
434
; get target list
435
        mov     edx, [ebx+ehci_pipe.BaseList-ehci_pipe.SoftwarePart]
435
        mov     edx, [ebx+ehci_pipe.BaseList-sizeof.ehci_pipe]
436
; TODO: calculate real bandwidth
436
; TODO: calculate real bandwidth
437
        movzx   eax, word [ebx+ehci_pipe.Token-ehci_pipe.SoftwarePart+2]
437
        movzx   eax, word [ebx+ehci_pipe.Token-sizeof.ehci_pipe+2]
438
        mov     ecx, [ebx+ehci_pipe.Flags-ehci_pipe.SoftwarePart]
438
        mov     ecx, [ebx+ehci_pipe.Flags-sizeof.ehci_pipe]
439
        and     eax, (1 shl 11) - 1
439
        and     eax, (1 shl 11) - 1
440
        shr     ecx, 30
440
        shr     ecx, 30
441
        imul    eax, ecx
441
        imul    eax, ecx
442
        movzx   ecx, byte [ebx+ehci_pipe.Flags-ehci_pipe.SoftwarePart]
442
        movzx   ecx, byte [ebx+ehci_pipe.Flags-sizeof.ehci_pipe]
443
        add     edx, ehci_static_ep.Bandwidths - ehci_static_ep.SoftwarePart
443
        add     edx, ehci_static_ep.Bandwidths - ehci_static_ep.SoftwarePart
444
; update bandwidth
444
; update bandwidth
445
.dec_bandwidth:
445
.dec_bandwidth:
446
        shr     ecx, 1
446
        shr     ecx, 1
447
        jnc     @f
447
        jnc     @f