Commit Graph

1379 Commits

Author SHA1 Message Date
bjorn3 ffbfecbdb0 graphics/fbcond: Make it robust against initial graphics driver being broken 2025-03-15 17:30:39 +01:00
bjorn3 87d71bc708 graphics/fbbootlogd: Merge Display into FbbbootlogScheme 2025-03-15 17:27:14 +01:00
bjorn3 54113f8fde graphics/fbbootlogd: Make it robust against initial graphics driver being broken 2025-03-15 17:21:23 +01:00
bjorn3 9290cffa70 graphics/fbbootlogd: Extract handle_handoff method 2025-03-15 17:18:28 +01:00
bjorn3 b9d043f6e2 inputd: Add ConsumerHandle::read_events 2025-03-15 17:09:45 +01:00
bjorn3 56808dbfb1 graphics/fbbootlogd: Remove input events background thread 2025-03-15 16:53:58 +01:00
bjorn3 943cbe3707 graphics/fbbootlogd: Remove workaround that prevents blocking on the graphics driver
Instead logd will no longer block on fbbootlogd to prevent the deadlock
that this worked around.
2025-03-15 16:53:44 +01:00
Jeremy Soller 1d3a1a432b Merge branch 'update_redox_scheme' into 'master'
Update to redox-scheme 0.4

See merge request redox-os/drivers!255
2025-03-14 21:22:52 +00:00
bjorn3 5d76acfd74 Update to redox-scheme 0.4 2025-03-14 22:11:30 +01:00
Jeremy Soller 3f9904e370 Merge branch 'remove_pcspkrd' into 'master'
Remove pcspkrd

See merge request redox-os/drivers!254
2025-03-13 19:11:48 +00:00
Jeremy Soller 7d927bd708 Merge branch 'fix_damage_clipping' into 'master'
graphics/graphics-ipc: Fix Damage::clip

Closes #51

See merge request redox-os/drivers!253
2025-03-13 18:21:01 +00:00
bjorn3 d5692c2855 Remove pcspkrd
The PC speaker device is not a general purpose audio device, but only
capable of playing beeps. While pcspkrd does currently get built, it
never actually gets started at startup. There is also no program
anywhere inside Redox OS capable of playing any sound through pcspkrd.
And finally basically the thing it is used for on modern systems is to
emit a beep when pressing backspace in a VT while there is no input
buffered. I personally find that beep rather annoying and have disabled
the Linux counterpart to pcspkrd on my system because of this.
2025-03-13 19:19:41 +01:00
bjorn3 7bb1693e86 graphics/graphics-ipc: Fix Damage::clip 2025-03-13 19:04:28 +01:00
Jeremy Soller f04725f9b1 Merge branch 'remove_legacy_path_usage' into 'master'
inputd: Avoid usage of legacy scheme path format

See merge request redox-os/drivers!252
2025-03-13 16:26:45 +00:00
Jeremy Soller eed287f31b Merge branch 'bgad_scheme' into 'master'
Move bgad and xhcid to redox-scheme

See merge request redox-os/drivers!251
2025-03-13 16:26:23 +00:00
bjorn3 c627024cd6 inputd: Avoid usage of legacy scheme path format 2025-03-13 17:22:20 +01:00
bjorn3 374e5fbfab xhcid: Use redox-scheme 2025-03-13 17:00:54 +01:00
bjorn3 f2d3d16455 graphics/bgad: Use redox-scheme 2025-03-13 17:00:54 +01:00
bjorn3 09ef96ae80 graphics/drivers-graphics: Fix some comments and remove no longer necessary feature 2025-03-13 17:00:54 +01:00
Jeremy Soller 451480a3e0 xhcid: do not panic if unable to find configuration descriptor 2025-03-13 08:41:23 -06:00
Jeremy Soller f91f3926cf Merge branch 'fix_usb_harddrive' into 'master'
Bunch of improvements to usb storage

See merge request redox-os/drivers!250
2025-03-09 18:00:42 +00:00
bjorn3 674b8c6724 xhcid: Fix a bunch of things to make usb storage work
configuration_value is not an index into config_descs, so scan for a
config_desc with the right configuration_value instead. And fix get_desc
getting confused by companion descriptors.
2025-03-09 17:04:25 +01:00
bjorn3 258ea4e6a5 storage/usbscsid: Use the unified disk scheme implementation 2025-03-09 17:04:25 +01:00
bjorn3 9800c57133 storage/driver-block: Fix couple of error condition checks 2025-03-09 17:04:25 +01:00
Jeremy Soller 5c374ab4e2 Merge branch 'unify_disk_scheme_handling' into 'master'
Mostly unify disk scheme implementations

See merge request redox-os/drivers!249
2025-03-08 22:45:40 +00:00
bjorn3 269fd9abc0 storage/lived: Use the unified disk scheme implementation 2025-03-08 22:52:36 +01:00
bjorn3 865ca86666 storage: Mostly unify disk scheme implementations
lived and usbscsid still keep their old scheme implementations.
2025-03-08 13:06:31 +01:00
bjorn3 c68a50faf2 storage: Move irq methods out of the scheme structs 2025-03-08 12:38:14 +01:00
Jeremy Soller 4a0b0bdf14 Merge branch 'storage_cleanup' into 'master'
Deduplicate a fair bit of code between block device drivers

See merge request redox-os/drivers!248
2025-03-08 01:36:49 +00:00
bjorn3 60a141b51c storage: Move most partition handling into DiskWrapper 2025-03-07 22:49:22 +01:00
bjorn3 b1dcda4cf7 storage/nvmed: Use DiskWrapper 2025-03-07 22:35:01 +01:00
bjorn3 371e8c0326 storage/virtio-blkd: Use DiskWrapper 2025-03-07 22:22:21 +01:00
bjorn3 9d27fad3d5 storage/driver-block: Make DiskWrapper generic over the disk type
This allows it to contain non-'static disks.
2025-03-07 22:22:21 +01:00
bjorn3 d0a7aed2fd storage/virtio-blk: Introduce VirtioDisk type 2025-03-07 22:22:20 +01:00
bjorn3 dfe23b0683 storage/driver-block: Make Disk::block_length infallible
It should be read when creating the struct implementing Disk and every
disk needs to have some block length.
2025-03-07 21:35:49 +01:00
bjorn3 f01a8c8d3e storage: Use DiskWrapper::pt in nvmed and virtio-blkd 2025-03-07 20:58:01 +01:00
bjorn3 ebdfc89e7a storage/nvmed: Pass NvmeNamespace by value and remove the separate nsid arguments 2025-03-07 20:46:33 +01:00
bjorn3 aacf09cef4 storage/driver-block: Remove id method from Disk trait 2025-03-07 20:42:41 +01:00
bjorn3 03329430b4 storage/driver-block: Handle block_read read buffer internally 2025-03-07 20:34:33 +01:00
Jeremy Soller 2fc0008db0 Merge branch 'partitionlib_improvements' into 'master'
Vendor and cleanup partitionlib

See merge request redox-os/drivers!247
2025-03-07 01:51:31 +00:00
Jeremy Soller b4d82c82bf Merge branch 'graphics_driver_api_refactor' into 'master'
A bunch of improvements to the graphics subsystem

See merge request redox-os/drivers!246
2025-03-07 01:50:35 +00:00
bjorn3 9257cbbfa2 storage/partitionlib: Couple of cleanups 2025-03-06 22:48:10 +01:00
bjorn3 398103e710 storage/partitionlib: Rustfmt 2025-03-06 22:18:21 +01:00
bjorn3 f6c3be42e7 storage: Vendor partitionlib to make it easier to change 2025-03-06 22:18:08 +01:00
bjorn3 be5b865058 graphics: Rename resource to framebuffer
This matches the Linux DRM name.
2025-03-06 21:41:26 +01:00
bjorn3 92295f2ea4 graphics/graphics-ipc: Use u32 fields in Damage
The fields should never be negative and this saves a couple of casts.
2025-03-06 20:49:21 +01:00
bjorn3 ee3382aed0 graphics/virtio-gpud: Add helper to submit a fenced request
This is necessary for implementing hardware cursor support.
2025-03-06 20:49:20 +01:00
bjorn3 fc92f0b0ce graphics: Rename the legacy graphics API to the v1 graphics API
It is quite likely that the next graphics API won't be the last one and
as such would become a legacy API too. Consistently using version
numbers makes it easier to refer to the exact version you mean.
2025-03-06 20:49:20 +01:00
bjorn3 972e19e900 graphics: Always pass damage to graphics drivers
This way the drivers don't have to special case switching between VTs.
2025-03-06 20:49:17 +01:00
bjorn3 88cfa76e2c graphics: Merge set_scanout and flush_resource into update_plane
The old api was pretty virtio-gpu specific. The new api is closed to how
atomic mode setting on Linux works.
2025-03-06 20:48:41 +01:00