Commit Graph

979 Commits

Author SHA1 Message Date
Ribbon 331b75f9bc Improve and cleanup the README 2024-04-03 21:45:26 +00:00
Jeremy Soller 23b20fa5b1 Merge branch 'latest_eq' into 'master'
Use latest event queue interface everywhere.

See merge request redox-os/drivers!151
2024-04-01 13:24:31 +00:00
4lDO2 e97ba74789 Reimplement all event_queue.trigger behavior. 2024-03-31 14:30:07 +02:00
4lDO2 4c35e88997 Use latest event queue interface everywhere. 2024-03-31 14:30:04 +02:00
Jeremy Soller e1fdadb62d Merge branch 'bcm2835_sdhcid' into 'master'
bcm2835-sdhcid: update redox_syscall version

See merge request redox-os/drivers!153
2024-03-30 14:44:31 +00:00
Ivan Tan acaa8e490c bcm2835-sdhcid: update redox_syscall version 2024-03-30 22:29:25 +08:00
Jeremy Soller 5612346e68 ps2d: implement vmmouse for i686 2024-03-29 10:10:13 -06:00
Jeremy Soller 64f48c6a57 Merge branch 'ahcid_align' into 'master'
Fix 257 page allocation in ahcid to 256.

See merge request redox-os/drivers!152
2024-03-24 17:37:01 +00:00
4lDO2 ee725b7a08 Fix 257 page allocation in ahcid. 2024-03-24 14:09:12 +01:00
Jeremy Soller ff7015a55a virtio-core: fix compilation on i686 2024-03-19 16:19:47 -06:00
Jeremy Soller 11a8038b4a Merge branch 'libredox' into 'master'
Switch to libredox where applicable (fixed)

See merge request redox-os/drivers!150
2024-03-18 22:09:25 +00:00
Jacob Lorentzon ff956fd3bb Switch to libredox where applicable (fixed) 2024-03-18 22:09:25 +00:00
Jeremy Soller 98078650f8 Revert "Switch to libredox where applicable."
This reverts commit 2e7dbf1cc1.
2024-03-18 15:00:52 -06:00
Jeremy Soller ae3129e582 Merge branch 'libredox' into 'master'
Switch to libredox where applicable.

See merge request redox-os/drivers!149
2024-03-18 20:37:19 +00:00
4lDO2 2e7dbf1cc1 Switch to libredox where applicable. 2024-03-18 19:23:05 +01:00
Jeremy Soller 7ae84a543b Merge branch 'nvmed_race' into 'master'
Fix potential race in nvmed

See merge request redox-os/drivers!148
2024-03-17 21:31:39 +00:00
bjorn3 5286f45311 Fix potential race in nvmed
Previously it was possible to submit commands before the event queue is
created by the irq handler thread.
2024-03-17 21:03:23 +01:00
Jeremy Soller 65f706530a Merge branch 'arm64_pcie' into 'master'
Search for PCI ECAM in the device tree on ARM

See merge request redox-os/drivers!147
2024-03-17 16:33:03 +00:00
bjorn3 15c8ab2331 Search for PCI ECAM in the device tree on ARM 2024-03-17 17:15:34 +01:00
Jeremy Soller 7ed2193a00 Merge branch 'unify_storage_drivers' into 'master'
Reduce code duplication between disk drivers

See merge request redox-os/drivers!146
2024-03-10 15:12:56 +00:00
bjorn3 20bc47f228 Move DiskWrapper into a new driver-block crate
Also merge block-io-wrapper into this crate.
2024-03-06 21:09:38 +01:00
bjorn3 3e42637066 Fix a panic message 2024-03-06 21:09:38 +01:00
bjorn3 9bb1222933 Fix UB lint in virtio-core
error: casting references to a bigger memory layout than the backing allocation is undefined behavior, even if the reference is unused
   --> virtio-core/src/probe.rs:126:21
    |
86  |         let capability = unsafe { &*(capability.data.as_ptr() as *const PciCapability) };
    |                                    --------------------------------------------------- backing allocation comes from here
...
126 |                     (&*(capability as *const PciCapability as *const PciCapabilityNotify))
    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: casting from `transport_pci::PciCapability` (13 bytes) to `transport_pci::PciCapabilityNotify` (17 bytes)
    = note: `#[deny(invalid_reference_casting)]` on by default
2024-03-06 21:06:26 +01:00
Jeremy Soller 25dcb8adc1 Merge branch 'driver-categories3' into 'master'
Move all storage, audio and graphics related drives to the relative subdirectories

See merge request redox-os/drivers!145
2024-03-01 00:24:52 +00:00
bjorn3 887412daf5 Move all graphics related drivers to graphics/ 2024-02-29 15:41:05 +01:00
bjorn3 0e98dc4a05 Move all audio drivers to audio/ 2024-02-29 15:41:05 +01:00
bjorn3 c75b560def Move all storage drivers to storage/ 2024-02-29 15:41:05 +01:00
Jeremy Soller c79ed01d7a Merge branch 'driver-category-net' into 'master'
Move all network drivers to net/

See merge request redox-os/drivers!144
2024-02-29 13:38:00 +00:00
bjorn3 e36b0a8e94 Move all network drivers to net/ 2024-02-28 21:31:26 +01:00
Jeremy Soller fece794c9f Merge branch 'named_network_adapters' into 'master'
Don't set the mac address network config from drivers

See merge request redox-os/drivers!143
2024-02-28 13:01:39 +00:00
Jeremy Soller 2f7b0ae7bb Merge branch 'remove_mac_setcfg' into 'master'
Don't set the mac address network config from drivers

See merge request redox-os/drivers!142
2024-02-28 12:58:45 +00:00
bjorn3 c4bc69a4d0 Give each network adapter a unique scheme name
This will be necessary in the future to support multiple network
adapters in a single system.
2024-02-28 11:49:48 +01:00
bjorn3 d33d7a91e5 Don't set the mac address network config from drivers
The mac handle of the network scheme is now supported by all network
drivers.
2024-02-28 09:36:42 +01:00
Jeremy Soller ad9305bf9d Merge branch 'unify_network_drivers' into 'master'
Unify the scheme handling of all network drivers

See merge request redox-os/drivers!141
2024-02-28 02:27:05 +00:00
bjorn3 9262d034bd Port virtio-netd to driver-network 2024-02-27 14:07:17 +01:00
bjorn3 de6beb8992 Implement network:mac in all remaining network drivers 2024-02-26 20:48:02 +01:00
bjorn3 3751c915fe Unify the scheme handling of all network drivers
This deduplicates a fair bit of non-trivial logic and makes it easier to
keep all network drivers in sync when the interface changes.
2024-02-26 20:43:41 +01:00
Jeremy Soller 7b3e809573 Merge branch 'optimize_pcid_grants' into 'master'
Only do one memory:physical map per MCFG entry.

See merge request redox-os/drivers!139
2024-02-20 22:27:14 +00:00
Jacob Lorentzon e7a6bb6c81 Only do one memory:physical map per MCFG entry. 2024-02-20 22:27:14 +00:00
Jeremy Soller a2e9e28195 Fix build for 32-bit x86 2024-02-16 21:17:02 -07:00
Jeremy Soller c52e17dd46 Even more fixes for 32-bit x86 2024-02-16 21:00:13 -07:00
Jeremy Soller 2c672a0568 More fixes for 32-bit x86 2024-02-16 20:58:54 -07:00
Jeremy Soller 2a4e292e1d virtio-core: mark CommonCfg as packed 2024-02-16 20:52:55 -07:00
Jeremy Soller de2fae8183 Do not compile MSI-X function for x86 32-bit 2024-02-16 20:52:37 -07:00
Jeremy Soller 40e2189e22 ahcid: spin for all requests 2024-02-15 16:00:52 -07:00
Jeremy Soller 74a64bf2bb Merge branch 'fix-aarch64-build' into 'master'
ihdad, rtl8139d, rtl8168d, virtio-core, xhcid: Fix aarch64 build

See merge request redox-os/drivers!140
2024-02-10 17:21:04 +00:00
Enver Balalic 7439262994 ihdad, rtl8139d, rtl8168d, virtio-core, xhcid: Fix aarch64 build 2024-02-10 19:03:36 +01:00
Jeremy Soller c432f0fddf Merge branch 'pci_interrupts_rework2' into 'master'
Various improvements to the MSI-X support

See merge request redox-os/drivers!138
2024-01-26 17:27:17 +00:00
bjorn3 67d3015e2e Add helper for allocating a single MSI/MSI-X interrupt vector
It doesn't actually configure the device to emit it though, but does
make this easier to do.
2024-01-25 14:43:44 +01:00
bjorn3 9b809312c2 Ignore MSI-X PBA in all drivers
It isn't used in any driver and even on Linux no driver seems to use it
at all. The only times it seems to be useful are if you were to mask an
interrupt and want to check if the interrupt fired without unmasking or
if you want to make the device itself trigger an interrupt.
2024-01-24 14:28:40 +01:00