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
Jeremy Soller
b17933f382
Merge branch 'fmt_all' into 'master'
...
Format all packages in fmt.sh
See merge request redox-os/drivers!245
2025-03-03 17:44:21 +00:00
Jeremy Soller
2b014e1330
Merge branch 'vt_to_go' into 'master'
...
Implicitly create a new VT for each consumer
See merge request redox-os/drivers!244
2025-03-03 17:42:10 +00:00
bjorn3
f26fdd7592
Format all packages in fmt.sh
2025-03-02 22:00:36 +01:00
bjorn3
e9d8d7ceaf
Implicitly create a new VT for each consumer
...
Instead of requiring the graphics driver to create a fixed set of VTs in
advance. This fixes the graphical interface when there is a graphics
driver but no boot framebuffer. Previously in that case vesad would exit
before it creates any VT and thus no consumer could show anything as
their VT was missing. In the future creating new VTs on the fly could
also allow a display manager to use a separate VT for each user session.
2025-03-02 20:28:34 +01:00
Jeremy Soller
2e82009412
Merge branch 'centralize_error_handling' into 'master'
...
Make all pcid_interface methods abort the process on errors
See merge request redox-os/drivers!242
2025-03-02 18:45:17 +00:00
Jeremy Soller
f9bbabf431
Merge branch 'inputd_improvements' into 'master'
...
A whole bunch of inputd improvements
See merge request redox-os/drivers!243
2025-03-02 18:44:47 +00:00
bjorn3
39dd9118c0
graphics/fbcond: Handle missing graphics driver at startup
2025-03-02 19:19:08 +01:00
bjorn3
67e9f29804
inputd: switch_vt is infallible
2025-03-02 18:57:10 +01:00
bjorn3
085a6e32c6
inputd: Unify early and non-early handle opening
2025-03-02 17:37:14 +01:00
bjorn3
f8972400ee
inputd: Move handoff logic to fn open
2025-03-02 17:36:41 +01:00
bjorn3
ec442b87a3
inputd: Use a single global display rather than have a per-vt display selection
2025-03-02 17:24:37 +01:00
bjorn3
cd193f2aed
inputd: Unconditionally perform handoff for all vts together
...
In preparation for having a single set of graphics drivers for all vts.
2025-03-02 17:24:18 +01:00
bjorn3
a0a8401e8d
inputd: Inline a couple of functions
2025-03-02 16:33:39 +01:00
bjorn3
de0239d3ed
inputd: Automatically switch to first vt once created
2025-03-02 16:33:39 +01:00
bjorn3
9779d1884e
inputd: Remove the active vt check before post_fevent
...
No input is added to pending anyway when the vt for the consumer isn't
the active vt anyway.
2025-03-02 16:33:38 +01:00
bjorn3
e7fe3183b0
Make all pcid_interface methods abort the process on errors
...
Effectively the only way to recover from errors in the communication
with pcid is by restarting the driver from scratch possibly after
restarting pcid. As such moving the aborts from individual drivers to
pcid_interface simplifies drivers while at the same time allowing nicer
error messages.
2025-03-02 12:36:35 +01:00