mirror of
https://github.com/asterinas/asterinas.git
synced 2025-06-16 00:36:48 +00:00
Rename some misleading method names
This commit is contained in:
parent
cefeea7b50
commit
2bda8d17c4
@ -46,7 +46,7 @@ impl MmioDevice for VirtioMmioDevice {
|
|||||||
|
|
||||||
impl MmioDevice for VirtioMmioTransport {
|
impl MmioDevice for VirtioMmioTransport {
|
||||||
fn device_id(&self) -> u32 {
|
fn device_id(&self) -> u32 {
|
||||||
self.common_device.device_id()
|
self.device.device_id()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -58,7 +58,7 @@ impl VirtioMmioTransport {
|
|||||||
pub(super) fn new(device: MmioCommonDevice) -> Self {
|
pub(super) fn new(device: MmioCommonDevice) -> Self {
|
||||||
let irq = device.irq().clone();
|
let irq = device.irq().clone();
|
||||||
let layout = SafePtr::new(device.io_mem().clone(), 0);
|
let layout = SafePtr::new(device.io_mem().clone(), 0);
|
||||||
let device_id = device.device_id();
|
let device_id = device.read_device_id().unwrap();
|
||||||
let (interrupt_ack, interrupt_status) = {
|
let (interrupt_ack, interrupt_status) = {
|
||||||
let interrupt_ack_offset = offset_of!(VirtioMmioLayout, interrupt_ack);
|
let interrupt_ack_offset = offset_of!(VirtioMmioLayout, interrupt_ack);
|
||||||
let interrupt_status_offset = offset_of!(VirtioMmioLayout, interrupt_status);
|
let interrupt_status_offset = offset_of!(VirtioMmioLayout, interrupt_status);
|
||||||
@ -77,7 +77,7 @@ impl VirtioMmioTransport {
|
|||||||
multiplex: MultiplexIrq::new(irq, interrupt_ack, interrupt_status),
|
multiplex: MultiplexIrq::new(irq, interrupt_ack, interrupt_status),
|
||||||
device: Arc::new(VirtioMmioDevice { device_id }),
|
device: Arc::new(VirtioMmioDevice { device_id }),
|
||||||
};
|
};
|
||||||
if device.common_device.version() == VirtioMmioVersion::Legacy {
|
if device.common_device.read_version().unwrap() == VirtioMmioVersion::Legacy {
|
||||||
field_ptr!(&device.layout, VirtioMmioLayout, legacy_guest_page_size)
|
field_ptr!(&device.layout, VirtioMmioLayout, legacy_guest_page_size)
|
||||||
.write_once(&(PAGE_SIZE as u32))
|
.write_once(&(PAGE_SIZE as u32))
|
||||||
.unwrap();
|
.unwrap();
|
||||||
@ -88,7 +88,7 @@ impl VirtioMmioTransport {
|
|||||||
|
|
||||||
impl VirtioTransport for VirtioMmioTransport {
|
impl VirtioTransport for VirtioMmioTransport {
|
||||||
fn device_type(&self) -> VirtioDeviceType {
|
fn device_type(&self) -> VirtioDeviceType {
|
||||||
VirtioDeviceType::try_from(self.common_device.device_id() as u8).unwrap()
|
VirtioDeviceType::try_from(self.device.device_id() as u8).unwrap()
|
||||||
}
|
}
|
||||||
|
|
||||||
fn set_queue(
|
fn set_queue(
|
||||||
@ -120,7 +120,7 @@ impl VirtioTransport for VirtioMmioTransport {
|
|||||||
.write_once(&(queue_size as u32))
|
.write_once(&(queue_size as u32))
|
||||||
.unwrap();
|
.unwrap();
|
||||||
|
|
||||||
match self.common_device.version() {
|
match self.common_device.read_version().unwrap() {
|
||||||
VirtioMmioVersion::Legacy => {
|
VirtioMmioVersion::Legacy => {
|
||||||
// The area should be continuous
|
// The area should be continuous
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
@ -254,7 +254,7 @@ impl VirtioTransport for VirtioMmioTransport {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn is_legacy_version(&self) -> bool {
|
fn is_legacy_version(&self) -> bool {
|
||||||
self.common_device.version() == VirtioMmioVersion::Legacy
|
self.common_device.read_version().unwrap() == VirtioMmioVersion::Legacy
|
||||||
}
|
}
|
||||||
|
|
||||||
fn max_queue_size(&self, idx: u16) -> Result<u16, VirtioTransportError> {
|
fn max_queue_size(&self, idx: u16) -> Result<u16, VirtioTransportError> {
|
||||||
|
@ -47,7 +47,7 @@ impl MmioBus {
|
|||||||
let length = self.common_devices.len();
|
let length = self.common_devices.len();
|
||||||
for i in (0..length).rev() {
|
for i in (0..length).rev() {
|
||||||
let common_device = self.common_devices.pop_front().unwrap();
|
let common_device = self.common_devices.pop_front().unwrap();
|
||||||
let device_id = common_device.device_id();
|
let device_id = common_device.read_device_id().unwrap();
|
||||||
let device = match driver.probe(common_device) {
|
let device = match driver.probe(common_device) {
|
||||||
Ok(device) => {
|
Ok(device) => {
|
||||||
debug_assert!(device_id == device.device_id());
|
debug_assert!(device_id == device.device_id());
|
||||||
@ -58,7 +58,6 @@ impl MmioBus {
|
|||||||
if err != BusProbeError::DeviceNotMatch {
|
if err != BusProbeError::DeviceNotMatch {
|
||||||
error!("MMIO device construction failed, reason: {:?}", err);
|
error!("MMIO device construction failed, reason: {:?}", err);
|
||||||
}
|
}
|
||||||
debug_assert!(device_id == device.device_id());
|
|
||||||
device
|
device
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -68,7 +67,7 @@ impl MmioBus {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub(super) fn register_mmio_device(&mut self, mut mmio_device: MmioCommonDevice) {
|
pub(super) fn register_mmio_device(&mut self, mut mmio_device: MmioCommonDevice) {
|
||||||
let device_id = mmio_device.device_id();
|
let device_id = mmio_device.read_device_id().unwrap();
|
||||||
for driver in self.drivers.iter() {
|
for driver in self.drivers.iter() {
|
||||||
mmio_device = match driver.probe(mmio_device) {
|
mmio_device = match driver.probe(mmio_device) {
|
||||||
Ok(device) => {
|
Ok(device) => {
|
||||||
@ -80,7 +79,6 @@ impl MmioBus {
|
|||||||
if err != BusProbeError::DeviceNotMatch {
|
if err != BusProbeError::DeviceNotMatch {
|
||||||
error!("MMIO device construction failed, reason: {:?}", err);
|
error!("MMIO device construction failed, reason: {:?}", err);
|
||||||
}
|
}
|
||||||
debug_assert!(device_id == common_device.device_id());
|
|
||||||
common_device
|
common_device
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -10,6 +10,7 @@ use crate::{
|
|||||||
io_mem::IoMem,
|
io_mem::IoMem,
|
||||||
mm::{paddr_to_vaddr, Paddr, VmIoOnce},
|
mm::{paddr_to_vaddr, Paddr, VmIoOnce},
|
||||||
trap::IrqLine,
|
trap::IrqLine,
|
||||||
|
Error, Result,
|
||||||
};
|
};
|
||||||
|
|
||||||
/// MMIO Common device.
|
/// MMIO Common device.
|
||||||
@ -37,7 +38,7 @@ impl MmioCommonDevice {
|
|||||||
};
|
};
|
||||||
info!(
|
info!(
|
||||||
"[Virtio]: Found Virtio mmio device, device id:{:?}, irq number:{:?}",
|
"[Virtio]: Found Virtio mmio device, device id:{:?}, irq number:{:?}",
|
||||||
res.device_id(),
|
res.read_device_id().unwrap(),
|
||||||
res.irq.num()
|
res.irq.num()
|
||||||
);
|
);
|
||||||
res
|
res
|
||||||
@ -54,13 +55,14 @@ impl MmioCommonDevice {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Device ID
|
/// Device ID
|
||||||
pub fn device_id(&self) -> u32 {
|
pub fn read_device_id(&self) -> Result<u32> {
|
||||||
self.io_mem.read_once::<u32>(8).unwrap()
|
self.io_mem.read_once::<u32>(8)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Version of the MMIO device.
|
/// Version of the MMIO device.
|
||||||
pub fn version(&self) -> VirtioMmioVersion {
|
pub fn read_version(&self) -> Result<VirtioMmioVersion> {
|
||||||
VirtioMmioVersion::try_from(self.io_mem.read_once::<u32>(4).unwrap()).unwrap()
|
VirtioMmioVersion::try_from(self.io_mem.read_once::<u32>(4)?)
|
||||||
|
.map_err(|_| Error::InvalidArgs)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Interrupt line
|
/// Interrupt line
|
||||||
|
Loading…
x
Reference in New Issue
Block a user