Commit Graph

65 Commits

Author SHA1 Message Date
Jeremy Soller f00a049439 Enable ahcid interrupts 2020-02-22 20:10:43 -07:00
Jeremy Soller c1b4292675 Improve ahcid interrupt handling 2020-02-22 19:46:28 -07:00
4lDO2 5807909ed1 Add partitioning support to nvmed. 2020-01-09 10:38:31 +11:00
4lDO2 60f05af555 Move the block-io-to-unaligned-io wrapper to its own crate. 2020-01-08 22:34:28 +11:00
4lDO2 5848f668a6 Don't fail when the blocksize couldn't be retrieved.
This is required for ahcid to work with make qemu_efi.
2020-01-05 12:17:47 +11:00
4lDO2 2a7216c342 It (partition support) works! 2020-01-05 10:43:07 +11:00
4lDO2 119f7a5595 Add partition support for ahcid (untested). 2020-01-04 19:35:16 +11: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 217e51f830 ahcid: Handle EOF 2019-07-18 21:04:52 -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 50652ceb93 Temporary patches for Redox with unix target family 2019-04-23 13:25:41 -06:00
Jeremy Soller 7afaadabd9 Ensure that MMIO memory is mapped without caching 2019-04-08 20:22:01 -06:00
Jeremy Soller 25aec9f2a7 Disable interrupts for ahcid 2019-02-18 21:11:41 -07:00
Jeremy Soller c9e0dc4fd5 Go back to polling ahcid to prevent hangs 2019-02-18 21:05:44 -07:00
Jeremy Soller a38dfb3231 Use IRQs to prevent spin loops in ahcid 2019-01-12 12:52:57 -07:00
Jeremy Soller c47c68f44c Update fmap support 2018-12-28 16:19:09 -07:00
Jeremy Soller 0a9b15939e Update to new event 2018-05-20 11:05:10 -06:00
Ian Douglas Scott d893a73e1e ahcid: fix atapi capacity detection 2018-03-11 18:24:23 -07:00
Jeremy Soller 329750afb9 Remove debug prints 2018-03-10 16:02:06 -07:00
Jeremy Soller 78cff3f57c Remove unnecessary parens 2018-01-28 14:49:29 -07:00
Ian Douglas Scott c8154e7607 ahci: refactor duplicated ATA command code into a method 2018-01-06 23:47:45 -08:00
Ian Douglas Scott 9de5eb7045 atapi: Implement read support 2018-01-04 14:20:12 -08:00
Ian Douglas Scott 78ab386268 Move capacity reading to seperate method 2018-01-04 12:25:47 -08:00
Ian Douglas Scott c78d4dcff0 ahci: atapi support (incomplete)
It can currently retrieve the capacity; no reads or writes yet.
2018-01-02 23:03:54 -08: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 053524acac Remove unused extern crate 2017-08-30 22:03:10 -06:00
Jeremy Soller 473ac85faa Return error when dup buf is not empty 2017-07-22 13:17:48 -06:00
Jeremy Soller 1e7013915b Add path implementation for e1000d and ahcid 2017-04-15 09:57:37 -06:00
Ivan Chebykin 4c93b53de0 Combine thread use statement with previous 2017-03-22 17:01:49 +03:00
Ivan Chebykin b6268ff95c Fix missing use statement 2017-03-22 16:35:32 +03:00
Jeremy Soller beef16096f Use thread::yield_now instead of pause in ahcid, e1000d, and rtl8168d
Remove debugging from e1000d
2017-03-21 20:52:39 -06:00
Adrian Neumann ebc5f86e8c Make enum values List and Disk contain two values instead of a tuple of values. 2017-03-05 15:44:06 +01:00
Corentin Henry d8a35a9a08 remove unused #[macro_use] 2017-01-24 11:09:09 -08:00
Jeremy Soller 4bb229959e Specify crates.io versions 2017-01-13 15:10:16 -07:00
Jeremy Soller 608403765d Refactor to move io into syscall, and use git for crate references 2017-01-09 20:36:36 -07:00
Jeremy Soller cf46a3b5fc Fallback in ahci driver when disk: not available, ability to list disk devices 2017-01-02 08:53:50 -07:00
Jeremy Soller 68a2fe57bc WIP: Predictable naming 2016-11-21 12:23:17 -07:00
Jeremy Soller bac443482a Switch to real standard, fix daemonization on real standard 2016-11-10 20:02:51 -07:00
Jeremy Soller 428e34f77d Disable power management 2016-11-07 20:46:34 -07:00
Jeremy Soller 8daf977c58 Fix eventing in kernel 2016-11-03 16:02:44 -06:00
Jeremy Soller 621e557174 Remove resource_sceme, Fix syscall crate name, add fmap 2016-11-02 19:48:25 -06:00
Jeremy Soller 81c4b8c998 Smp (#23)
* Fire up multiple processors

* Use IPIs to wake up secondary processors

* Much better exception information

* Modifications to show more information on fault

* WIP: Use real libstd

* Add TLS (not complete)

* Add random function, export getpid, cleanup

* Do not spin APs until new context

* Update rust

* Update rust

* Use rd/wrfsbase

* Implement TLS

* Implement compiler builtins and update rust

* Update rust

* Back to Redox libstd

* Update rust
2016-10-31 10:49:00 -06:00
Jeremy Soller fe339a9362 Redo networking (#22)
* Rewriting network functions

* Add buffer to dup
Fix non-blocking handling by triggering once on enabling events to read to EOF

* Modifications for UDP API

* Implement TCP client side

* Add active close

* Add DMAR parser

* Implement basic TCP listening. Need to improve the state machine

* Reduce debugging

* Fixes for close procedure

* Updates to fix path processing in libstd
2016-10-26 13:19:56 -06:00
Jeremy Soller 891a8a85b3 Update submodules 2016-10-23 19:01:30 -06:00
Jeremy Soller a1acadd373 More debugging of writes in ahcid 2016-10-22 22:23:09 -06:00
Jeremy Soller b18653c57d Debug all driver activity to display:1, use format to avoid line splitting 2016-10-22 19:35:23 -06:00
Jeremy Soller 71a9795139 Do not ack IRQ in ahcid, as it does not enable IRQs 2016-10-20 14:37:05 -06:00
Jeremy Soller d78981ded6 Add rtl8168 driver, make drivers use O_NONBLOCK 2016-10-20 12:52:58 -06:00