Fix hangup in VirtualBox on latest kernel revisions

git-svn-id: svn://kolibrios.org@3594 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Asper 2013-06-03 19:16:17 +00:00
parent 3459b85059
commit 6a3ae451a1

View File

@ -806,7 +806,7 @@ restore out_size
align 4 align 4
proc hda_irq ;+ proc hda_irq ;+
spin_lock ;spin_lock
if DEBUG_IRQ if DEBUG_IRQ
push eax esi push eax esi
;mov esi, msgIRQ ;mov esi, msgIRQ
@ -820,7 +820,7 @@ proc hda_irq ;+
call azx_readl call azx_readl
test eax, eax test eax, eax
jnz @f jnz @f
spin_unlock ;spin_unlock
ret ret
@@: @@:
mov ebx, eax ; status mov ebx, eax ; status
@ -886,7 +886,7 @@ proc hda_irq ;+
@@: @@:
;end if ;end if
or eax, 1 or eax, 1
spin_unlock ;spin_unlock
ret ret
endp endp
@ -1334,19 +1334,19 @@ endp
align 4 align 4
play: play:
spin_lock ;spin_lock
mov edx, ICH6_REG_WALLCLK mov edx, ICH6_REG_WALLCLK
call azx_readl call azx_readl
mov [ctrl.start_wallclk], eax mov [ctrl.start_wallclk], eax
call azx_stream_start call azx_stream_start
xor eax, eax xor eax, eax
spin_unlock ;spin_unlock
ret ret
align 4 align 4
stop: stop:
spin_lock ;spin_lock
;* call azx_stream_stop ;Asper: Hangs system ;* call azx_stream_stop ;Asper: Hangs system
;R push ebx ecx edx ;R push ebx ecx edx
;R ; stop DMA ;R ; stop DMA
@ -1386,7 +1386,7 @@ stop:
;Asper ] ;Asper ]
xor eax, eax xor eax, eax
spin_unlock ;spin_unlock
ret ret
;align 4 ;align 4