Commit Graph

731 Commits

Author SHA1 Message Date
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
Ribbon 2b86dc0bc9 Document new drivers and explain what is missing on incomplete drivers 2023-07-08 20:34:30 +00: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
Anhad Singh c5729befe5 inputd: do not reswitch if the same
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-07-07 17:03:14 +10:00
Anhad Singh 5c4e7b36fa make getty work
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-07-07 16:51:46 +10:00
Jeremy Soller bfe8536d58 Add rtl8139 driver 2023-07-06 10:32:16 -06:00
Anhad Singh 2cfd62d194 remove patches from virtio-gpu/
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-07-06 17:38:44 +10:00
Anhad Singh 7e83bd9adf virtio-gpud: indicate the reservation of 0 resource_id
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-07-05 17:50:51 +10:00
Anhad Singh 320fedbd76 virtio-gpud: get multiple displays to work
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-07-05 17:49:08 +10:00
Anhad Singh 30146fa81d virtio-gpu: update orbital patch
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-07-05 13:44:35 +10:00
Anhad Singh 07039e8321 drivers: run fmt.sh
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-07-05 11:14:06 +10: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 caa435eae3 virtio_gpud: able to get orbital running :^)
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-07-04 13:21:41 +10:00
Anhad Singh c0950d0686 virtio-gpu: start working on the scheme
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-07-04 13:17:58 +10:00
Anhad Singh 7cc2f4eff7 virtio-gpu: start working on the scheme
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-07-03 17:12:59 +10:00
Jeremy Soller f91770ed64 Merge branch 'core' into 'master'
virtio: add `virtio-net` drivers

See merge request redox-os/drivers!95
2023-06-30 12:44:17 +00:00
Jeremy Soller 5a5eb25d91 Merge branch 'master' into 'master'
drivers: add `virtio-blk`

See merge request redox-os/drivers!94
2023-06-30 12:21:53 +00: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 a720cf6f44 virtio-core::probe: make sure the addr is aligned
sys_physmap() requires the address to be page aligned. This fixes the
panic inside the `virtio-gpu` driver.

Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-29 16:36:02 +10:00
Anhad Singh c898e2e01f virtio-core: make send async
This allows for us to do cool stuff such as
`join!(queue.send(read_command), queue.send(write_command),
queue.send(read_command_2))`

Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-29 14:21:34 +10:00
Anhad Singh 92fd7fc553 virtio-core::ChainBuilder: automagically add the NEXT flag
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-28 15:06:23 +10:00
Anhad Singh 97e77e21b6 virtio-net: scheme :^)
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-28 12:58:51 +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 eee780fa0f virtiod: split into virtio-core and virtiod
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-27 09:51:16 +10:00
Anhad Singh ea1c855cdc virtiod: make use of the int_roundings feature
* Removes the need to define `round_up` and `div_round_up`

Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-26 09:55:48 +10:00
Anhad Singh 65c4317564 virtiod: refactoring
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-23 16:18:14 +10:00
Anhad Singh c176903905 virtio-blk: read and scheme
* Minor code cleanup
* Able to read/write from the disk
* Recycle the descriptors (this is currently done inefficiently, will be
  fixed in a follow up commit)
* Add the disk scheme for virtio-blk with working functionality for seek(),
  read() and open()
* After all of this work, we are successfully able to boot redox from
  virtio-blk!! :)

Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-23 12:41:07 +10:00
Anhad Singh 576302a618 virtio-blk: get device config
* Get the device config for virtio-blk
* Log out the # sectors and the block size

Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-20 14:17:31 +10:00
Anhad Singh 8fb5e353ea virtio::transport: setup queue
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-20 14:14:22 +10:00
Anhad Singh 990a9c2716 virtio::transport: finalize features
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-20 10:14:10 +10:00
Anhad Singh 8a7fa569a7 virtiod: ensure the device has MSI-X support
According to the virtio sspecification v1.2, MSI-X support is REQUIRED
and is the only supported method anyways (i.e, legacy int and MSI wont
work).

Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-20 10:00:08 +10:00
Anhad Singh 100ff9abd4 virtio: add check_device_feature and ack_driver_feature for
`StandardTransport`.

Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-19 16:33:00 +10:00
Anhad Singh 12551d450f virtio: enable and allocate MSI-X vector
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-19 15:12:44 +10:00
Anhad Singh fe22264571 misc: include virtiod in the README
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-19 12:22:03 +10:00
Anhad Singh f750d4223d virtio: perform the device reset
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-19 12:19:57 +10:00
Anhad Singh 7e5a3196c2 pcid::server_handle: add get_capabilities
This commit adds the `get_capabilities` function to `PcidServerHandle`
which returns all of the `Capability`s (raw representation) of the PCI
device.

Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-19 12:18:56 +10:00
Anhad Singh 1580cb8c83 virtio: stub!
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2023-06-19 12:02:35 +10:00
Jeremy Soller 5400dc1213 Merge branch 'remove_physunmap' into 'master'
Remove all usages of physunmap

See merge request redox-os/drivers!93
2023-06-11 14:12:01 +00:00
4lDO2 a5a3f3341f Remove all usages of physunmap. 2023-06-11 11:33:27 +02:00
Jeremy Soller 78d332c003 Merge branch 'stable-alloc' into 'master'
Use the free functions in std::alloc instead of Global as AllocRef

See merge request redox-os/drivers!77
2023-05-30 21:26:17 +00:00
Noa e673b4e3b1 Use the free functions in std::alloc instead of Global as AllocRef 2023-05-30 13:01:45 -05:00
Jeremy Soller b05402e92b ided: add timeouts to loops and better debugging 2023-05-11 20:31:02 -06:00
Jeremy Soller 78b41c1d72 Merge branch 'rw_van_230406' into 'master'
Add AmlHandler read/write of physaddr

See merge request redox-os/drivers!92
2023-04-14 14:19:19 +00:00
Ron Williams 9fb4a8be04 Add AmlHandler read/write of physaddr 2023-04-13 19:09:07 -07:00
Jeremy Soller 985d870fa2 Merge branch 'update-orbclient' into 'master'
Update orbclient

See merge request redox-os/drivers!91
2023-04-05 14:55:47 +00:00
Will Angenent d682fb7994 Update orbclient 2023-04-04 18:21:31 +01:00
Jeremy Soller dc665af7ce Merge branch 'rw_van_230328' into 'master'
acpi: Add aml serde with separate library for definitions

See merge request redox-os/drivers!90
2023-03-29 12:56:38 +00:00
Ron Williams 1baac63934 clean up aml symbols 2023-03-29 01:41:13 -07:00
Ron Williams 23be7ed63c Add serde with separate library for definitions 2023-03-27 20:58:59 -07:00
Jeremy Soller ef48f4aa9a Merge branch 'master' into 'master'
New section on README.

See merge request redox-os/drivers!89
2023-03-26 23:30:58 +00:00