Commit Graph

49 Commits

Author SHA1 Message Date
bjorn3 7b11acbc46 graphics: Introduce graphics-ipc crate
While for now this for now only includes helpers for the current limited
display interface which is relatively simple to implement manually, in
the future we will likely need a more complex interface with gpu drivers
that would be hard to get right without a common crate proving the
interface.
2024-12-28 16:21:58 +01:00
bjorn3 d2f1af9ca7 Add driver-graphics crate
This unifies the driver interface handling between graphics drivers and
makes it easier to change all graphics drivers in lockstep when adding
new features.
2024-12-27 12:47:43 +01:00
bjorn3 4e2f1a730c graphics: Introduce a separate daemon for the boot log
The daemon responsible for the boot log must never ever block to avoid
deadlocks, but doing so while still accepting keyboard input is
non-trivial. This commit splits the boot log out from fbcond into a
separate daemon to make this a lot easier to implement. This will also
allow making fbcond blocking again, which will simplify some things.
2024-12-24 21:39:41 +01:00
bjorn3 0789069afc input: Move all input drivers to a subdirectory 2024-12-24 15:28:56 +01:00
Jeremy Soller 8a36c994e1 Add hwd 2024-11-04 20:19:08 -07:00
Kamil Koczurek d2c82add9d Move Io/Pio/Mmio from redox_syscall to common
* Fix Mmio repr from transparent to packed.
* Rename Mmio::from to Mmio::new.
* Remove dead imports around affected code.
* Minor formatting.
2024-09-30 13:01:36 +02:00
Jeremy Soller 68d838650a Init usbhubd 2024-04-16 21:44:37 -06:00
bjorn3 20bc47f228 Move DiskWrapper into a new driver-block crate
Also merge block-io-wrapper into this crate.
2024-03-06 21:09:38 +01:00
bjorn3 887412daf5 Move all graphics related drivers to graphics/ 2024-02-29 15:41:05 +01:00
bjorn3 0e98dc4a05 Move all audio drivers to audio/ 2024-02-29 15:41:05 +01:00
bjorn3 c75b560def Move all storage drivers to storage/ 2024-02-29 15:41:05 +01:00
bjorn3 e36b0a8e94 Move all network drivers to net/ 2024-02-28 21:31:26 +01:00
bjorn3 d33d7a91e5 Don't set the mac address network config from drivers
The mac handle of the network scheme is now supported by all network
drivers.
2024-02-28 09:36:42 +01:00
bjorn3 3751c915fe Unify the scheme handling of all network drivers
This deduplicates a fair bit of non-trivial logic and makes it easier to
keep all network drivers in sync when the interface changes.
2024-02-26 20:43:41 +01:00
Jeremy Soller a2e9e28195 Fix build for 32-bit x86 2024-02-16 21:17:02 -07:00
bjorn3 bc1a068a4f Introduce fbcond to replace text console handling inside vesad
This will in the future allow switching between graphical mode and text
mode virtual terminals while keeping alternative graphics drivers like
virtio-gpud enabled at all times rather than having to reset back to VGA
mode every time.
2024-01-14 18:14:40 +01:00
Ivan Tan 3871c99e6e add bcm2835-sdhci driver 2023-12-09 12:16:06 +08:00
Jeremy Soller 051532e516 Do not use git redox_syscall 2023-09-08 09:20:41 -06:00
4lDO2 0d589a3189 Add a livedisk daemon. 2023-09-07 15:02:13 +02:00
4lDO2 625ae7f9e4 Use syscall git dependency. 2023-08-03 12:46:14 +02:00
4lDO2 d90edb0808 Implement improved mmap in vesad. 2023-08-03 10:50:48 +02:00
4lDO2 094e3ba548 Add a crate for driver helpers. 2023-07-18 11:01:08 +02:00
Jeremy Soller 3320cd2eee Merge branch 'core' into 'master'
drivers: add `virtio-gpu`!

See merge request redox-os/drivers!96
2023-07-07 14:08:58 +00:00
Jeremy Soller bfe8536d58 Add rtl8139 driver 2023-07-06 10:32:16 -06:00
Anhad Singh 2f2720263f drivers: add inputd
Take out the input coalescing from `vesad` into `inputd`.

Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-07-05 11:12:53 +10:00
Anhad Singh 4bbda21f0b drivers: start building virtio-gpu
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-29 16:37:59 +10:00
Anhad Singh 6968a548d9 virtiod: rename to virtio-blkd
* Rename to `virtio-blkd`
* Start working on `virtio-netd`

Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-27 10:26:04 +10:00
Anhad Singh 1580cb8c83 virtio: stub!
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-19 12:02:35 +10:00
Will Angenent d682fb7994 Update orbclient 2023-04-04 18:21:31 +01:00
Jeremy Soller eb7b811c36 Add initial sb16 driver 2023-01-21 14:24:40 -07:00
Jeremy Soller d7ca6eeeed ac97: add stub driver for AC97 2022-11-15 13:37:31 -07:00
Jeremy Soller 39df471bc2 Enable LTO 2022-11-02 14:36:53 -06:00
Jeremy Soller 41217ad6fa Add ided stub 2022-09-07 12:16:16 -06:00
4lDO2 af873f7626 Update redox_syscall dependency. 2022-07-27 17:55:39 +02:00
4lDO2 322af701d6 Use aligned addresses in physmap. 2022-07-27 15:33:21 +02:00
4lDO2 7a2b3d7656 Update dependencies. 2021-06-17 18:18:27 +02:00
4lDO2 be984885bb WIP: Move ACPI code from kernel to drivers. 2021-03-10 11:24:27 +01:00
jD91mZM2 c255a869ba Don't use a local dependency lmao 2020-10-29 15:57:09 +01:00
jD91mZM2 ac64d09186 vesad: Provide legacy fmap implementation 2020-08-17 16:28:02 +02:00
Jeremy Soller 7ccf8d27b0 Remove pbr patch 2020-05-28 11:54:30 -06:00
Jeremy Soller 713058f183 Update dependencies, add patches 2020-05-22 09:06:03 -06:00
4lDO2 73ca576558 Use the real DCIs instead of driver-level numbers.
Sidenote: instead of STALLing because the driver didn't configure the
endpoints properly, regular transfers now work. Thus, QEMU was able to
recognize that it received a Bulk-Only Transport CBW. Yay!

Additionally, to make life easier when debugging, usbctl was added; now
it can get endpoint statuses which were previously non-accessible from
shell scripts, after the transition to the new ctl+data endpoint
interface.
2020-02-12 22:07:37 +01:00
4lDO2 b308dad7c6 Add a basic HID driver unable to parse report descs.
Custom device requests are now implemented though.
2020-02-08 10:21:21 +01:00
4lDO2 ae0d43c12a Add a framework-ish for USB drivers. 2020-02-03 21:48:35 +01:00
4lDO2 60f05af555 Move the block-io-to-unaligned-io wrapper to its own crate. 2020-01-08 22:34:28 +11:00
Simon Ellmann 42c2184d70 Add ixgbe driver 2019-06-30 23:53:53 +02:00
Tibor Nagy ae8a6075a2 Add pcspkr driver 2019-03-05 18:35:01 +01:00
Jeremy Soller a2fe86c725 Update Cargo.toml 2017-06-03 12:50:44 -06:00
Jeremy Soller 24f9dbccb0 Add pcid.toml, cargo workspace 2017-05-10 21:46:59 -06:00