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
c52e17dd46
Even more fixes for 32-bit x86
2024-02-16 21:00:13 -07:00
Enver Balalic
7439262994
ihdad, rtl8139d, rtl8168d, virtio-core, xhcid: Fix aarch64 build
2024-02-10 19:03:36 +01: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
bjorn3
f43aa8574c
Simplify MSI-X table pointer computation
2024-01-24 14:28:40 +01:00
bjorn3
7dbf22331b
Share msix config validation code
2024-01-24 14:28:40 +01:00
bjorn3
354c351b19
Unify device info printing between drivers
2024-01-23 13:01:40 +01:00
bjorn3
77b97bb2ed
Introduce PciBar::physmap_mem helper
2024-01-23 12:02:40 +01:00
bjorn3
ad23ad5d93
Introduce irq_handle helper for legacy interrupts
2024-01-22 19:35:18 +01:00
bjorn3
bd6716efe4
Make legacy_interrupt_line an Option
...
Drivers don't need to know the exact legacy_interrupt_pin in use.
Just if legacy interrupts are enabled and if so which
legacy_interrupt_line is used.
2024-01-22 19:35:06 +01:00
bjorn3
a5d0c7c354
Use pci_types for reading BARs
...
This simplifies a lot of code and adds support for 64bit BARs.
2024-01-22 15:54:18 +01:00
bjorn3
5192816de7
Introduce expect_port and expect_mem helpers
2024-01-21 21:12:24 +01:00
bjorn3
dc13752d74
Force usage of pcid_interface
2024-01-20 19:42:06 +01:00
bjorn3
de7677604e
Use hex instead of decimal in all config.toml
...
This matches the way basically everyone prints PCI ids
2024-01-20 17:59:38 +01:00
Jeremy Soller
15e523c8eb
alxd,ihdad,rtl8168d: support MMIO on 32-bit systems
2023-09-09 11:19:17 -06:00
Jeremy Soller
61e9512468
Update redox_syscall to 0.4
2023-09-07 20:49:37 -06:00
Ian Douglas Scott
bd2a66d817
Use default branch of netutils instead of removed branch
2023-08-02 18:41:26 -07:00
4lDO2
0277284874
Switch to common::Dma for each non-initfs driver.
2023-07-18 13:59:44 +02:00
4lDO2
8555b8ab3d
Remove physmap in non-initfs drivers too.
2023-07-18 11:01:17 +02:00
Jeremy Soller
bfe8536d58
Add rtl8139 driver
2023-07-06 10:32:16 -06:00
4lDO2
a5a3f3341f
Remove all usages of physunmap.
2023-06-11 11:33:27 +02:00
Jeremy Soller
d74a406dcd
rtl8168d: Allow use of BAR1 for 32-bit systems
2023-01-20 13:30:41 -07:00
Jeremy Soller
c57b3c8910
rtl8168: enable MSI and MSI-X
2022-11-19 16:18:39 -07:00
4lDO2
af873f7626
Update redox_syscall dependency.
2022-07-27 17:55:39 +02:00
4lDO2
21e30b7339
Replace syscall::clone() with libc::fork().
2022-07-27 16:25:01 +02:00
Jeremy Soller
00de428d6b
Workarounds for x86 32-bit
2022-07-26 17:20:34 -06:00
4lDO2
07f10fb4d1
Update redox_syscall to v0.2.12
2022-03-24 16:06:00 +01:00
4lDO2
d426ffacea
Update toolchain to 2022-03-18.
2022-03-19 15:06:29 +01:00
Jeremy Soller
c5a1013bc2
rtl8168d: use syscall::Daemon
2022-03-01 20:34:27 -07:00
4lDO2
7a2b3d7656
Update dependencies.
2021-06-17 18:18:27 +02:00
Jeremy Soller
be101621cc
Update to newer syscall
2020-08-02 15:25:03 -06:00
Jeremy Soller
a16604fc2c
e1000d and rtl8168d will use pipe to wait for network: before continuing
2020-07-19 21:04:10 -06:00
Jeremy Soller
084587ed02
Add TODO to address spurious interrupts
2019-09-11 22:03:34 -06:00
Jeremy Soller
c7f02e5e21
rtl8168d: fix calculation of next read size
2019-09-11 21:03:07 -06:00
Jeremy Soller
7f95962fa2
rtl8168d: match 8169 device and add documentation
2019-09-11 20:35:09 -06:00
Jeremy Soller
2087f0ad03
Fix parsing of bar size
2019-09-04 20:40:18 -06:00
Jeremy Soller
eda6bc6f92
Calculate and use PCI BAR memory sizes in most drivers.
2019-09-04 20:38:08 -06:00
Jeremy Soller
aecb345abc
Remove rtl8168d debugging
2019-08-29 20:31:33 -06:00
Jeremy Soller
2de4a526fb
Merge scheme handling in e1000d and rtl8168d
2019-08-29 20:16:48 -06:00
Jeremy Soller
a0ada39f1b
rtl8168d: Open irq file with O_NONBLOCK
2019-08-29 19:31:56 -06:00
Jeremy Soller
d49c945826
rtl8168d: Use pause in spin loops
2019-08-29 08:22:16 -06:00
Jeremy Soller
56894fbdc2
rtl8168d: handle EOF
2019-07-26 20:13:37 -06:00
Jeremy Soller
f4d54c1831
Merge branch 'redox-unix' into 'redox-unix'
...
Add ixgbe driver and split filesystem.toml into separate driver config files
See merge request redox-os/drivers!46
2019-07-03 20:21:38 +00:00
Simon Ellmann
1e3413acaa
Add ixgbe driver and split filesystem.toml into separate driver config files
2019-07-03 20:22:19 +02:00
Roland Ruckerbauer
b50437af8a
Fixed deprecated syntax in vesad
...
2018 edition upgrade & fixes for a bunch of 'future error warnings'
Actually upgrading all crates to 2018 edition
2019-06-29 21:47:52 +02:00
Jeremy Soller
50652ceb93
Temporary patches for Redox with unix target family
2019-04-23 13:25:41 -06:00
Jeremy Soller
7afaadabd9
Ensure that MMIO memory is mapped without caching
2019-04-08 20:22:01 -06:00
Jeremy Soller
e090281086
Support for new fevent
2019-03-13 13:58:55 -06:00