bb952838ca
fix: DiskAdd string
2024-07-20 17:20:32 -04:00
0eea7a6130
refactor: tweak some things
...
First of all, the driver will now abort initialization if it encounters
the first found namespace LBADS is not 512, since KolibriOS doesn't
support a LBADS greater than 512 as of now.
This commit also removes verbose debug logs and adds appropriate error
codes to nvme_readwrite
2024-07-20 16:38:12 -04:00
c21376dde4
add IOCTL error codes
2024-07-18 17:58:15 -04:00
9632b2841d
fix: apply PRP offset error fix
2024-07-18 17:24:28 -04:00
1e315791fb
fix: PRP list allocation
2024-07-18 17:01:26 -04:00
b88c5185a7
fix: get correct physical address of PRP2
2024-07-18 15:17:27 -04:00
a1639a3b9b
more fixes in alloc_dptr
2024-07-12 15:38:45 -04:00
48fef9b8d7
fix PRP2 alignment
2024-07-12 14:03:19 -04:00
a8aafb415f
fix: initialize prp_list before PRPs
2024-07-12 13:59:54 -04:00
e9de569036
apply some fixes
2024-07-12 13:55:44 -04:00
87fa0e0e3f
refactor build_prp_list and remove free_prp_list
2024-07-12 13:33:26 -04:00
52831db8f8
fix call to alloc_dptr
2024-07-11 17:03:39 -04:00
8eb5990c32
remove a lot of code, refactor alloc_dptr to use buf directly
2024-07-11 17:02:30 -04:00
becabd38b5
fix more stuff
2024-07-11 16:19:42 -04:00
7181653389
fix(build_prp_list): add correct return value
2024-07-11 13:39:05 -04:00
8101007350
perf: dont use recursion for build_prp_list + remove redundant calls
2024-07-11 13:37:05 -04:00
1f5815351c
fix(nvme_readwrite): make numsectors 0 if no sectors were written
2024-07-11 12:21:04 -04:00
b57c530854
feat: get reading from PRP2 entry working
2024-07-09 16:48:39 -04:00
f3a8ed0f6f
feat: get reading from single prp entry working
2024-07-09 15:43:45 -04:00
405dcb5155
more fixes to nvme_io_rw, alloc_dptr, write_prp_buf (2)
2024-07-09 14:51:48 -04:00
c9143ca99d
more fixes to nvme_io_rw and alloc_dptr
2024-07-09 13:38:55 -04:00
66d24f8e49
fix(nvme_readwrite): PRP2 checking
2024-07-08 16:30:29 -04:00
b21f83fef0
refactor: replace memset with memsetdz
2024-07-08 15:49:43 -04:00
87afd80486
fix writing to PRP entries
2024-07-08 14:49:43 -04:00
092c655593
another indentation fix
2024-07-05 17:30:22 -04:00
f93b16f3bd
style: fix indentation
2024-07-05 17:27:38 -04:00
14f01df0f7
style: fix indentation
2024-07-05 17:11:51 -04:00
f689eb5b2c
feat: add read functionality (to be tested)
2024-07-05 16:02:11 -04:00
b6e6a69de7
implement allocating and freeing PRP lists
2024-07-05 14:05:52 -04:00
d4bb46c00b
some refactoring and fixes
2024-07-04 14:42:06 -04:00
b011dae650
refactor: build PRP list in separate function
2024-07-03 16:44:23 -04:00
06c0abac6a
wip: implement code for allocating PRP entries and lists
2024-07-03 15:53:32 -04:00
038e994d48
refactor: replace jl/jg with jb/ja respectively
2024-07-03 12:36:31 -04:00
5f2adab1ab
wip: read command
2024-07-01 17:10:36 -04:00
383190e462
feat: implement I/O read command
2024-07-01 13:56:00 -04:00
2d1e0d4aa4
fix: write command and nvme_cmd_wait hanging
2024-07-01 13:34:12 -04:00
76f94d74e1
nvme_init: check MQES
2024-06-27 19:19:06 -04:00
274a5681a2
more I/O command fixes
2024-06-27 18:31:51 -04:00
1f4b25a309
more fixes
2024-06-27 17:10:25 -04:00
34ff6d786e
fix: initialize I/O queues correctly
2024-06-27 15:55:29 -04:00
5bc4a832f1
feat: add support for consuming completion queues entries from multiple queues
2024-06-27 15:19:32 -04:00
ef8087f2fd
fix: mask interrupts for I/O queue 1
2024-06-27 15:13:37 -04:00
6c82778503
tidyup IRQ handler, plus some other fixes
2024-06-27 15:12:52 -04:00
724dad7d69
build: include debugging recipe
2024-06-25 18:37:48 -04:00
7bba4781fb
feat: implement disk registering code
2024-06-25 18:37:04 -04:00
43f29c791a
add num
field to each detected NVMe device
2024-06-25 15:44:04 -04:00
f612befee6
implement reporting on namespace info
2024-06-25 15:24:52 -04:00
3db664b53e
feat: add function table and fix determine_active_nsids
2024-06-25 14:37:19 -04:00
b4d3c82480
fix: comment out excessive debug lines
...
Printing too many messages to the screen much causes KolibriOS to crash,
so we have to remove them for now
2024-06-25 14:29:09 -04:00
603a48e351
refactor: change NVM_ASQS
to 63
2024-06-25 14:28:29 -04:00