Merge branch 'fix-aarch64-build' into 'master'

ihdad, rtl8139d, rtl8168d, virtio-core, xhcid: Fix aarch64 build

See merge request redox-os/drivers!140
This commit is contained in:
Jeremy Soller
2024-02-10 17:21:04 +00:00
6 changed files with 17 additions and 9 deletions
+3 -1
View File
@@ -16,7 +16,9 @@ use std::sync::Arc;
use event::EventQueue;
use pcid_interface::{MsiSetFeatureInfo, PcidServerHandle, PciFeature, PciFeatureInfo, SetFeatureInfo};
use pcid_interface::irq_helpers::{read_bsp_apic_id, allocate_single_interrupt_vector_for_msi};
#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
use pcid_interface::irq_helpers::allocate_single_interrupt_vector_for_msi;
use pcid_interface::irq_helpers::read_bsp_apic_id;
use redox_log::{OutputBuilder, RedoxLogger};
pub mod hda;
+3 -1
View File
@@ -15,7 +15,9 @@ use std::sync::Arc;
use event::EventQueue;
use pcid_interface::{MsiSetFeatureInfo, PcidServerHandle, PciFeature, PciFeatureInfo, SetFeatureInfo, SubdriverArguments};
use pcid_interface::irq_helpers::{read_bsp_apic_id, allocate_single_interrupt_vector_for_msi};
#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
use pcid_interface::irq_helpers::allocate_single_interrupt_vector_for_msi;
use pcid_interface::irq_helpers::read_bsp_apic_id;
use pcid_interface::msi::{MsixCapability, MsixTableEntry};
use redox_log::{RedoxLogger, OutputBuilder};
use syscall::{EventFlags, Packet, SchemeBlockMut};
+3 -1
View File
@@ -13,7 +13,9 @@ use std::sync::Arc;
use event::EventQueue;
use pcid_interface::{MsiSetFeatureInfo, PcidServerHandle, PciFeature, PciFeatureInfo, SetFeatureInfo, SubdriverArguments};
use pcid_interface::irq_helpers::{read_bsp_apic_id, allocate_single_interrupt_vector_for_msi};
#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
use pcid_interface::irq_helpers::allocate_single_interrupt_vector_for_msi;
use pcid_interface::irq_helpers::read_bsp_apic_id;
use pcid_interface::msi::{MsixCapability, MsixTableEntry};
use redox_log::{RedoxLogger, OutputBuilder};
use syscall::{EventFlags, Packet, SchemeBlockMut};
+3 -3
View File
@@ -8,9 +8,9 @@ pub fn enable_msix(pcid_handle: &mut PcidServerHandle) -> Result<File, Error> {
unimplemented!("virtio_core: aarch64 enable_msix")
}
pub fn probe_legacy_port_transport<'a>(
pci_header: &PciHeader,
pub fn probe_legacy_port_transport(
pci_config: &SubdriverArguments,
pcid_handle: &mut PcidServerHandle,
) -> Result<Device<'a>, Error> {
) -> Result<Device, Error> {
panic!("virtio-core: aarch64 doesn't support legacy port I/O")
}
+2 -2
View File
@@ -8,10 +8,10 @@ pub fn enable_msix(pcid_handle: &mut PcidServerHandle) -> Result<File, Error> {
}
pub fn probe_legacy_port_transport(
pci_header: &PciHeader,
pci_config: &SubdriverArguments,
pcid_handle: &mut PcidServerHandle,
) -> Result<Device, Error> {
let port = pci_header.get_bar(0).expect_port();
let port = pci_config.func.bars[0].expect_port();
unsafe { syscall::iopl(3).expect("virtio: failed to set I/O privilege level") };
log::warn!("virtio: using legacy transport");
+3 -1
View File
@@ -12,7 +12,9 @@ use std::sync::{Arc, Mutex};
use std::env;
use pcid_interface::{MsiSetFeatureInfo, PcidServerHandle, PciFeature, PciFeatureInfo, SetFeatureInfo};
use pcid_interface::irq_helpers::{read_bsp_apic_id, allocate_single_interrupt_vector_for_msi};
#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
use pcid_interface::irq_helpers::allocate_single_interrupt_vector_for_msi;
use pcid_interface::irq_helpers::read_bsp_apic_id;
use pcid_interface::msi::MsixTableEntry;
use event::{Event, EventQueue};