WIP: feat: add NVMe driver #91
@ -1,30 +0,0 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2024. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;; GNU GENERAL PUBLIC LICENSE ;;
|
||||
;; Version 2, June 1991 ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
macro PDEBUGF _level*, _fmt*, _bus*, _devfn*, [_args] {
|
||||
common
|
||||
if __DEBUG__
|
||||
sub esp, 12
|
||||
push ebx
|
||||
movzx ebx, _bus
|
||||
mov dword [esp + 4], ebx
|
||||
movzx ebx, _devfn
|
||||
shr ebx, 3 ; get rid of 3 lowest bits (function code), the rest bits is device code
|
||||
mov dword [esp + 8], ebx
|
||||
movzx ebx, _devfn
|
||||
and ebx, 00000111b ; get only 3 lowest bits (function code)
|
||||
mov dword [esp + 12], ebx
|
||||
pop ebx
|
||||
DEBUGF _level, _fmt, [esp], [esp + 4], [esp + 8], _args
|
||||
add esp, 12
|
||||
end if
|
||||
}
|
||||
|
||||
; vim: syntax=fasm
|
@ -29,7 +29,6 @@ include "../fdo.inc"
|
||||
include "../pci.inc"
|
||||
include "../peimport.inc"
|
||||
include "nvme.inc"
|
||||
include "macros.inc"
|
||||
include "lib.inc"
|
||||
include "command.inc"
|
||||
|
||||
@ -572,7 +571,6 @@ proc detect_nvme
|
||||
jnz .err
|
||||
|
||||
@@:
|
||||
PDEBUGF DBG_INFO, "PCI(%u.%u.%u): Detected NVMe device...\n", [esi + PCIDEV.bus], [esi + PCIDEV.devfn]
|
||||
cmp dword [pcidevs_len], TOTAL_PCIDEVS
|
||||
jne @f
|
||||
DEBUGF DBG_INFO, "Can't add any more NVMe devices...\n"
|
||||
@ -644,7 +642,7 @@ proc device_is_compat stdcall, pci:dword
|
||||
ret
|
||||
|
||||
.failure:
|
||||
PDEBUGF DBG_INFO, "PCI(%u.%u.%u): something went wrong checking NVMe device compatibility\n", byte [esi + pcidev.bus], byte [esi + pcidev.devfn]
|
||||
DEBUGF DBG_INFO, "nvme%u: something went wrong checking NVMe device compatibility\n", [esi + pcidev.num]
|
||||
pop ecx edx esi
|
||||
xor eax, eax
|
||||
ret
|
||||
|
Loading…
Reference in New Issue
Block a user