mirror of
https://github.com/KolibriOS/kolibrios.git
synced 2024-12-23 15:16:48 +03:00
Bugfixes for PE version of i8254x driver
git-svn-id: svn://kolibrios.org@4524 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
7b7c0326ac
commit
7ea58d1906
@ -219,7 +219,6 @@ FCT_TYPE_DEFAULT = 0x8808
|
|||||||
struct TDESC
|
struct TDESC
|
||||||
addr_l dd ?
|
addr_l dd ?
|
||||||
addr_h dd ?
|
addr_h dd ?
|
||||||
|
|
||||||
length_cso_cmd dd ? ; 16 bits length + 8 bits cso + 8 bits cmd
|
length_cso_cmd dd ? ; 16 bits length + 8 bits cso + 8 bits cmd
|
||||||
status dd ? ; status, checksum start field, special
|
status dd ? ; status, checksum start field, special
|
||||||
ends
|
ends
|
||||||
@ -294,7 +293,7 @@ ends
|
|||||||
;; (standard driver proc) ;;
|
;; (standard driver proc) ;;
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
|
||||||
proc START stdcall, reason:dword, cmdline:dword
|
proc START c, reason:dword, cmdline:dword
|
||||||
|
|
||||||
cmp [reason], DRV_ENTRY
|
cmp [reason], DRV_ENTRY
|
||||||
jne .fail
|
jne .fail
|
||||||
@ -345,7 +344,7 @@ proc service_proc stdcall, ioctl:dword
|
|||||||
jb .fail
|
jb .fail
|
||||||
|
|
||||||
mov eax, [edx + IOCTL.input]
|
mov eax, [edx + IOCTL.input]
|
||||||
cmp byte [eax], 1 ; 1 means device number and bus number (pci) are given
|
cmp byte[eax], 1 ; 1 means device number and bus number (pci) are given
|
||||||
jne .fail ; other types arent supported for this card yet
|
jne .fail ; other types arent supported for this card yet
|
||||||
|
|
||||||
; check if the device is already listed
|
; check if the device is already listed
|
||||||
@ -385,9 +384,9 @@ proc service_proc stdcall, ioctl:dword
|
|||||||
; save the pci bus and device numbers
|
; save the pci bus and device numbers
|
||||||
|
|
||||||
mov eax, [edx + IOCTL.input]
|
mov eax, [edx + IOCTL.input]
|
||||||
movzx ecx, byte [eax+1]
|
movzx ecx, byte[eax+1]
|
||||||
mov [ebx + device.pci_bus], ecx
|
mov [ebx + device.pci_bus], ecx
|
||||||
movzx ecx, byte [eax+2]
|
movzx ecx, byte[eax+2]
|
||||||
mov [ebx + device.pci_dev], ecx
|
mov [ebx + device.pci_dev], ecx
|
||||||
|
|
||||||
; Now, it's time to find the base mmio addres of the PCI device
|
; Now, it's time to find the base mmio addres of the PCI device
|
||||||
@ -891,7 +890,10 @@ int_handler:
|
|||||||
|
|
||||||
; End of code
|
; End of code
|
||||||
|
|
||||||
section '.data' readable writable
|
data fixups
|
||||||
|
end data
|
||||||
|
|
||||||
|
;section '.data' readable writable
|
||||||
include '../peimport.inc'
|
include '../peimport.inc'
|
||||||
|
|
||||||
include_debug_strings
|
include_debug_strings
|
||||||
|
Loading…
Reference in New Issue
Block a user