4lDO2
21e30b7339
Replace syscall::clone() with libc::fork().
2022-07-27 16:25:01 +02:00
Jeremy Soller
00de428d6b
Workarounds for x86 32-bit
2022-07-26 17:20:34 -06:00
Jeremy Soller
da8ecef8a7
Workarounds for aarch64 support
2022-07-26 16:11:45 -06:00
Jeremy Soller
860821c150
Support compilation on more architectures
2022-07-26 16:01:54 -06:00
4lDO2
07f10fb4d1
Update redox_syscall to v0.2.12
2022-03-24 16:06:00 +01:00
Jeremy Soller
88a6eb17e9
Make nvmed less async, reduces hangs
2022-02-11 14:26:21 -07:00
Jeremy Soller
a1d8b81428
Increase NVME debug level
2022-02-11 11:00:50 -07:00
Jeremy Soller
544f1cbebc
nvmed,xhcid: print BAR number
2022-02-11 10:44:38 -07:00
Jeremy Soller
b9d6ca7db5
nvmed: panic if BAR is 0
2022-02-11 10:41:56 -07:00
4lDO2
7a2b3d7656
Update dependencies.
2021-06-17 18:18:27 +02:00
Jeremy Soller
be101621cc
Update to newer syscall
2020-08-02 15:25:03 -06:00
4lDO2
6bd4bb814f
Support xHCs that only support 32-bit physical addresses.
2020-06-18 19:17:20 +00:00
4lDO2
07b1fe79fa
Cleanup, and remove trace log writes for nvmed.
2020-05-03 16:33:56 +02:00
4lDO2
938cce8c8c
make qemu_nvme works!
...
only cleanup left...
2020-05-03 16:02:23 +02:00
4lDO2
3558397859
ASYNC COMMAND SUBMISSION WORKS (partially).
2020-05-03 15:47:09 +02:00
4lDO2
cea6ce7d7a
Move the setrens to a later position, in nvmed.
2020-05-02 00:05:04 +02:00
4lDO2
2db3bf4689
Read real block sizes.
2020-05-01 20:00:24 +02:00
4lDO2
1936f05030
NVME WORKS WITH IRQs
2020-05-01 14:14:47 +02:00
4lDO2
64e9eea9b0
Implement asynchronous command __submission__.
...
Note that by writing submission, I'm referring to blocking until a
submission queue has more entries available. The command completion
handling is already async.
2020-05-01 13:14:31 +02:00
4lDO2
c61e886108
Refactor and rustfmt the nvme driver.
2020-05-01 11:57:55 +02:00
4lDO2
167b994aea
WIP: Asyncify IO SQ creation too.
2020-04-30 15:01:35 +02:00
4lDO2
3207f5a009
WIP: Make I/O completion queue creation async.
2020-04-30 14:48:43 +02:00
4lDO2
cbeb0070ec
WIP: Asyncify namespace identification.
2020-04-29 20:44:38 +02:00
4lDO2
737870439a
Wrap some NVME commands in async (not compiling).
2020-04-29 20:36:35 +02:00
4lDO2
6c2f103841
WIP: Complete the NVME CQ reactor (doesn't compile yet)
2020-04-29 19:35:48 +02:00
4lDO2
d485176bd6
Improve startup interrupt initialization.
2020-04-27 15:59:06 +02:00
4lDO2
e6a46bb6a6
Begin with NVME MSI support.
2020-04-25 23:02:16 +02:00
4lDO2
7b69d5b9b5
WIP: Use the enhanced pcid IPC.
2020-04-22 21:21:55 +02:00
Jeremy Soller
a24b73efcf
nvmed: Simplify init logging
2020-03-29 19:56:37 -06:00
Jeremy Soller
2cac3cb752
nvmed: Fix partition offset check
2020-03-29 19:26:13 -06:00
Jeremy Soller
a01f1c4c80
nvmed: fix block size conversion
2020-03-28 13:53:42 -06:00
4lDO2
5807909ed1
Add partitioning support to nvmed.
2020-01-09 10:38:31 +11:00
Jeremy Soller
a38a20984e
Basic implementation of NVMe IRQ handler
2019-09-05 20:37:20 -06:00
Jeremy Soller
2087f0ad03
Fix parsing of bar size
2019-09-04 20:40:18 -06:00
Jeremy Soller
eda6bc6f92
Calculate and use PCI BAR memory sizes in most drivers.
2019-09-04 20:38:08 -06:00
Jeremy Soller
249606a8c9
Fix nvmed on real hardware
2019-08-28 20:15:03 -06:00
Jeremy Soller
745d8818e1
Read completion using ptr::read_volatile
2019-08-27 21:16:58 -06:00
Jeremy Soller
13dd6ae28f
nvmed: add to initfs and fix reading larger block sizes
2019-08-24 20:45:48 -06:00
Jeremy Soller
b2c76034b7
nvmed: add scheme with read/write implemented using polling
2019-08-24 20:24:01 -06:00
Jeremy Soller
9c277981be
nvmed: Set up I/O queues
2019-08-24 09:26:13 -06:00
Jeremy Soller
df4a7b054b
nvmed: Identify controller and namespaces
2019-08-24 08:37:38 -06:00
Jeremy Soller
37e92ac8e5
nvmed: Implement admin queue
2019-08-23 20:29:19 -06:00
Roland Ruckerbauer
b50437af8a
Fixed deprecated syntax in vesad
...
2018 edition upgrade & fixes for a bunch of 'future error warnings'
Actually upgrading all crates to 2018 edition
2019-06-29 21:47:52 +02:00
Jeremy Soller
7afaadabd9
Ensure that MMIO memory is mapped without caching
2019-04-08 20:22:01 -06:00
Jeremy Soller
c47c68f44c
Update fmap support
2018-12-28 16:19:09 -07:00
Jeremy Soller
bd8a377c78
Use capability mode (null namespace) for drivers
2017-10-09 20:36:16 -06:00
Jeremy Soller
8e41cb9f03
Use disk heirarchy
2017-09-30 20:49:11 -06:00
Jeremy Soller
63dd2286fe
nvmed: Verify correct memory space
2017-02-18 19:07:11 -07:00
Jeremy Soller
7be81d7837
Add read, write command structures
2017-02-18 15:00:14 -07:00
Jeremy Soller
28dbc45637
WIP: NVME driver
2017-02-18 14:05:04 -07:00