Jeremy Soller 706d40dfe6 Merge branch 'document-new-drivers' into 'master'
Document new drivers and explain what is missing on incomplete drivers

See merge request redox-os/drivers!97
2023-07-08 20:42:07 +00:00
2022-11-20 13:16:51 -07:00
2023-06-11 11:33:27 +02:00
2023-06-11 11:33:27 +02:00
2023-06-11 11:33:27 +02:00
2023-03-29 01:41:13 -07:00
2023-06-11 11:33:27 +02:00
2023-06-11 11:33:27 +02:00
2023-06-11 11:33:27 +02:00
2023-06-11 11:33:27 +02:00
2022-07-27 17:55:39 +02:00
2023-07-05 11:12:53 +10:00
2023-07-06 10:32:16 -06:00
2023-07-06 10:32:16 -06:00
2023-01-21 16:14:04 -07:00
2020-02-15 09:56:32 +01:00
2022-07-27 17:55:39 +02:00
2023-07-07 16:51:46 +10:00
2023-06-29 14:21:34 +10:00
2023-07-07 16:51:46 +10:00
2023-07-07 16:51:46 +10:00
2023-06-11 11:33:27 +02:00
2023-06-19 12:02:35 +10:00
2023-07-07 14:08:58 +00:00
2023-07-07 14:08:58 +00:00
2023-07-05 11:12:53 +10:00
2023-07-06 17:38:44 +10:00
2017-10-20 20:05:49 -06:00

Drivers

These are the currently implemented devices/hardware interfaces.

  • ac97d - Realtek audio chipsets.
  • acpid - ACPI (incomplete).

Lack of drivers for devices defined in AML.

  • ahcid - SATA.
  • alxd - Atheros ethernet (incomplete).

Lack of datasheet to finish.

  • amlserde - a library to provide serialization/deserialization of the AML symbol table from ACPI (incomplete).
  • bgad - Bochs emulator/debugger.
  • block-io-wrapper - Library used by other drivers.
  • e1000d - Intel Gigabit ethernet.
  • ided - IDE.
  • ihdad - Intel HD Audio chipsets.
  • inputd - Multiplexes input from multiple input drivers and provides that to Orbital.
  • ixgbed - Intel 10 Gigabit ethernet.
  • nvmed - NVMe.
  • pcid - PCI.
  • pcspkrd - PC speaker
  • ps2d - PS/2
  • rtl8139d - Realtek ethernet.
  • rtl8168d - Realtek ethernet.
  • sb16d - Sound Blaster audio (incomplete).

Still need to determine a way to allocate memory under 16MiB for use in ISA DMA.

  • usbctl - USB control (incomplete).

Missing class drivers for various classes.

  • usbhidd - USB HID (incomplete).

Has tons of descriptors that are possible, not all are supported.

  • usbscsid - USB SCSI (incomplete).

Missing class drivers for various classes.

  • vboxd - VirtualBox guest.
  • vesad - VESA.
  • virtio-blkd - VirtIO block device (incomplete).
  • virtio-core - VirtIO core.
  • virtio-gpud - VirtIO GPU device (incomplete).
  • virtio-netd - VirtIO net device (incomplete).
  • xhcid - xHCI (incomplete).

Contributing to Drivers

If you want to write drivers for Redox, datasheets are preferable, when they are freely available. Be aware that datasheets are often provided under a Non-Disclosure Agreement from hardware vendors, which can affect the ability to create an MIT-licensed driver.

If you don't have datasheets, we recommend you to do reverse-engineering of available C code of BSD drivers.

We recommend BSDs drivers because BSD license is compatible with MIT (permissive), that way we can reuse the code in other drivers.

S
Description
RedBear Operating System, based on RedoxOS. Licenced under MIT license.
https://redbearos.org
Readme MIT 18 GiB
Languages
C 37.5%
C++ 37.2%
JavaScript 6.7%
QML 3.4%
HTML 3.2%
Other 11.4%