Andrew Walbran
|
90f2523711
Assert in VirtQueue that buffers are not empty.
|
1 year ago |
Andrew Walbran
|
713ac2f890
Update to latest version of bitflags crate.
|
1 year ago |
Yuekai Jia
|
7289d17bb0
Fix some bugs
|
1 year ago |
Andrew Walbran
|
f09db7b529
Enable unsafe_op_in_unsafe_fn lint on some modules. (#68)
|
1 year ago |
Andrew Walbran
|
62fbbdc164
Try taking buffers by reference rather than pointer.
|
2 years ago |
Andrew Walbran
|
2caa561a86
VirtQueue::pop_used should also be marked as unsafe.
|
2 years ago |
Andrew Walbran
|
7ea4491389
Document safety requirements for Hal trait and mark it as unsafe.
|
2 years ago |
Andrew Walbran
|
7656bb9a01
Allow HAL to validate MMIO ranges (#57)
|
2 years ago |
Andrew Walbran
|
ea3de12e98
Keep shadow copy of descriptor table.
|
2 years ago |
Andrew Walbran
|
4b6045b8f3
Suppress available buffer notifications if the device asks to.
|
2 years ago |
Andrew Walbran
|
280e5f9889
Implement fake reads and writes in terms of a shared function.
|
2 years ago |
Andrew Walbran
|
6dc6eeeef3
Return Vec rather than taking mutable slice.
|
2 years ago |
Andrew Walbran
|
819f8ca470
Test sending to console.
|
2 years ago |
Andrew Walbran
|
72e5aaee34
Make queue size a const generic parameter.
|
2 years ago |
Andrew Walbran
|
0690500487
Return pointer rather than usize from Dma::vaddr.
|
2 years ago |
Andrew Walbran
|
608cd9f05d
Specify direction when allocating DMA regions.
|
2 years ago |
Andrew Walbran
|
8187f6fd94
Use more flexible virtqueue layout when possible.
|
2 years ago |
Andrew Walbran
|
90d508a8aa
Unshare buffers in pop_used.
|
2 years ago |
Andrew Walbran
|
f047e6b201
Add method to get next descriptor index if NEXT flag is set.
|
2 years ago |
Andrew Walbran
|
43804de05b
Take token as parameter to pop_used rather than returning it.
|
2 years ago |
Andrew Walbran
|
d0d47bcc0d
Add methods to Hal to share and unshare buffers with device.
|
2 years ago |
Andrew Walbran
|
9c4b422194
Add helper to iterate over all buffers rather than repeating code.
|
2 years ago |
Andrew Walbran
|
13ed3419c7
Make dependencies explicit.
|
2 years ago |
Andrew Walbran
|
633548725c
Rename Error::BufferTooSmall to QueueFull and improve documentation. (#43)
|
2 years ago |
Andrew Walbran
|
a072863bd6
Fix some clippy warnings. (#38)
|
2 years ago |
Andrew Walbran
|
25925a31c7
Add safe helper method to add buffers and wait until they are used.
|
2 years ago |
Andrew Walbran
|
6183bed94a
Mark Queue::add as unsafe.
|
2 years ago |
Andrew Walbran
|
576e481e86
Reset queues when device is dropped. (#30)
|
2 years ago |
Andrew Walbran
|
6d94dc7746
Use u16 for queue indices.
|
2 years ago |
Andrew Walbran
|
e28a1e05c8
Fix soundness issues with MMIO and shared memory (#18)
|
2 years ago |