Commit Graph

2725 Commits

Author SHA1 Message Date
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
bjorn3 1c4fdcfc1a Integrate netstack in the root workspace 2025-03-10 20:57:58 +01:00
bjorn3 96bf7b02a2 Add 'netstack/' from commit 'ad9d652062ebe90682e96cb4a80d09760f48a457'
git-subtree-dir: netstack
git-subtree-mainline: 9fae54dc2b
git-subtree-split: ad9d652062
2025-03-10 20:55:36 +01:00
Jeremy Soller ad9d652062 Merge branch 'update_smoltcp' into 'master'
Update smoltcp and use CUBIC congestion control

See merge request redox-os/netstack!55
2025-03-10 12:37:48 +00:00
Jeremy Soller d7b41e0bd4 Merge branch 'remove_gitmodules' into 'master'
Remove .gitmodules

See merge request redox-os/netstack!54
2025-03-10 12:37:32 +00:00
bjorn3 d7c128684d Use CUBIC as TCP congestion controller
Support for TCP congestion control has been introduced in smoltcp 0.12.
Smoltcp supports Reno and CUBIC. Of the two CUBIC has higher throughput.
Enabling the socket-tcp-cubic feature is enough to default to CUBIC.

With this change pkg install libgcc is about 35% faster than previously
without congestion control. (5.5MiB/s vs 4MiB/s previously)
2025-03-09 20:13:16 +01:00
bjorn3 b92be2e7d9 Update to smoltcp 0.12 2025-03-09 20:13:16 +01:00
bjorn3 c56cf43d22 Update to smoltcp 0.11 2025-03-09 20:13:16 +01:00
bjorn3 44e3cb0f81 Remove .gitmodules
Forgot to remove this in the last MR.
2025-03-09 19:15:51 +01:00
Jeremy Soller cbf43ede3d Merge branch 'improvements' into 'master'
Couple of improvements

See merge request redox-os/netstack!53
2025-03-09 18:01:58 +00: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 f4243538b3 Remove dependency on byteorder 2025-03-09 18:29:12 +01:00
bjorn3 5d2742813b Remove no longer necessary extern crate 2025-03-09 18:24:44 +01:00
bjorn3 26cf9bc961 Fix a couple of warnings 2025-03-09 18:23:32 +01:00
bjorn3 576136d01c Rustfmt 2025-03-09 17:47:42 +01:00
bjorn3 023459391c Remove unused dependency patch 2025-03-09 17:46:33 +01:00
bjorn3 da0b284646 Remove unused smoltcp submodule 2025-03-09 17:46:15 +01: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