diff --git a/src/device/blk.rs b/src/device/blk.rs index d8e8d029..baf87ca1 100644 --- a/src/device/blk.rs +++ b/src/device/blk.rs @@ -3,7 +3,7 @@ use crate::hal::Hal; use crate::queue::VirtQueue; use crate::transport::{read_config, Transport}; -use crate::volatile::Volatile; +use crate::volatile::ReadOnly; use crate::{Error, Result}; use bitflags::bitflags; use log::info; @@ -391,18 +391,18 @@ impl Drop for VirtIOBlk { #[repr(C)] struct BlkConfig { /// Number of 512 Bytes sectors - capacity_low: Volatile, - capacity_high: Volatile, - size_max: Volatile, - seg_max: Volatile, - cylinders: Volatile, - heads: Volatile, - sectors: Volatile, - blk_size: Volatile, - physical_block_exp: Volatile, - alignment_offset: Volatile, - min_io_size: Volatile, - opt_io_size: Volatile, + capacity_low: ReadOnly, + capacity_high: ReadOnly, + size_max: ReadOnly, + seg_max: ReadOnly, + cylinders: ReadOnly, + heads: ReadOnly, + sectors: ReadOnly, + blk_size: ReadOnly, + physical_block_exp: ReadOnly, + alignment_offset: ReadOnly, + min_io_size: ReadOnly, + opt_io_size: ReadOnly, // ... ignored } @@ -565,18 +565,18 @@ mod tests { #[test] fn config() { let mut config_space = BlkConfig { - capacity_low: Volatile::new(0x42), - capacity_high: Volatile::new(0x02), - size_max: Volatile::new(0), - seg_max: Volatile::new(0), - cylinders: Volatile::new(0), - heads: Volatile::new(0), - sectors: Volatile::new(0), - blk_size: Volatile::new(0), - physical_block_exp: Volatile::new(0), - alignment_offset: Volatile::new(0), - min_io_size: Volatile::new(0), - opt_io_size: Volatile::new(0), + capacity_low: ReadOnly::new(0x42), + capacity_high: ReadOnly::new(0x02), + size_max: ReadOnly::new(0), + seg_max: ReadOnly::new(0), + cylinders: ReadOnly::new(0), + heads: ReadOnly::new(0), + sectors: ReadOnly::new(0), + blk_size: ReadOnly::new(0), + physical_block_exp: ReadOnly::new(0), + alignment_offset: ReadOnly::new(0), + min_io_size: ReadOnly::new(0), + opt_io_size: ReadOnly::new(0), }; let state = Arc::new(Mutex::new(State { queues: vec![QueueStatus::default()], @@ -598,18 +598,18 @@ mod tests { #[test] fn read() { let mut config_space = BlkConfig { - capacity_low: Volatile::new(66), - capacity_high: Volatile::new(0), - size_max: Volatile::new(0), - seg_max: Volatile::new(0), - cylinders: Volatile::new(0), - heads: Volatile::new(0), - sectors: Volatile::new(0), - blk_size: Volatile::new(0), - physical_block_exp: Volatile::new(0), - alignment_offset: Volatile::new(0), - min_io_size: Volatile::new(0), - opt_io_size: Volatile::new(0), + capacity_low: ReadOnly::new(66), + capacity_high: ReadOnly::new(0), + size_max: ReadOnly::new(0), + seg_max: ReadOnly::new(0), + cylinders: ReadOnly::new(0), + heads: ReadOnly::new(0), + sectors: ReadOnly::new(0), + blk_size: ReadOnly::new(0), + physical_block_exp: ReadOnly::new(0), + alignment_offset: ReadOnly::new(0), + min_io_size: ReadOnly::new(0), + opt_io_size: ReadOnly::new(0), }; let state = Arc::new(Mutex::new(State { queues: vec![QueueStatus::default()], @@ -668,18 +668,18 @@ mod tests { #[test] fn write() { let mut config_space = BlkConfig { - capacity_low: Volatile::new(66), - capacity_high: Volatile::new(0), - size_max: Volatile::new(0), - seg_max: Volatile::new(0), - cylinders: Volatile::new(0), - heads: Volatile::new(0), - sectors: Volatile::new(0), - blk_size: Volatile::new(0), - physical_block_exp: Volatile::new(0), - alignment_offset: Volatile::new(0), - min_io_size: Volatile::new(0), - opt_io_size: Volatile::new(0), + capacity_low: ReadOnly::new(66), + capacity_high: ReadOnly::new(0), + size_max: ReadOnly::new(0), + seg_max: ReadOnly::new(0), + cylinders: ReadOnly::new(0), + heads: ReadOnly::new(0), + sectors: ReadOnly::new(0), + blk_size: ReadOnly::new(0), + physical_block_exp: ReadOnly::new(0), + alignment_offset: ReadOnly::new(0), + min_io_size: ReadOnly::new(0), + opt_io_size: ReadOnly::new(0), }; let state = Arc::new(Mutex::new(State { queues: vec![QueueStatus::default()], @@ -743,18 +743,18 @@ mod tests { #[test] fn flush() { let mut config_space = BlkConfig { - capacity_low: Volatile::new(66), - capacity_high: Volatile::new(0), - size_max: Volatile::new(0), - seg_max: Volatile::new(0), - cylinders: Volatile::new(0), - heads: Volatile::new(0), - sectors: Volatile::new(0), - blk_size: Volatile::new(0), - physical_block_exp: Volatile::new(0), - alignment_offset: Volatile::new(0), - min_io_size: Volatile::new(0), - opt_io_size: Volatile::new(0), + capacity_low: ReadOnly::new(66), + capacity_high: ReadOnly::new(0), + size_max: ReadOnly::new(0), + seg_max: ReadOnly::new(0), + cylinders: ReadOnly::new(0), + heads: ReadOnly::new(0), + sectors: ReadOnly::new(0), + blk_size: ReadOnly::new(0), + physical_block_exp: ReadOnly::new(0), + alignment_offset: ReadOnly::new(0), + min_io_size: ReadOnly::new(0), + opt_io_size: ReadOnly::new(0), }; let state = Arc::new(Mutex::new(State { queues: vec![QueueStatus::default()], @@ -810,18 +810,18 @@ mod tests { #[test] fn device_id() { let mut config_space = BlkConfig { - capacity_low: Volatile::new(66), - capacity_high: Volatile::new(0), - size_max: Volatile::new(0), - seg_max: Volatile::new(0), - cylinders: Volatile::new(0), - heads: Volatile::new(0), - sectors: Volatile::new(0), - blk_size: Volatile::new(0), - physical_block_exp: Volatile::new(0), - alignment_offset: Volatile::new(0), - min_io_size: Volatile::new(0), - opt_io_size: Volatile::new(0), + capacity_low: ReadOnly::new(66), + capacity_high: ReadOnly::new(0), + size_max: ReadOnly::new(0), + seg_max: ReadOnly::new(0), + cylinders: ReadOnly::new(0), + heads: ReadOnly::new(0), + sectors: ReadOnly::new(0), + blk_size: ReadOnly::new(0), + physical_block_exp: ReadOnly::new(0), + alignment_offset: ReadOnly::new(0), + min_io_size: ReadOnly::new(0), + opt_io_size: ReadOnly::new(0), }; let state = Arc::new(Mutex::new(State { queues: vec![QueueStatus::default()], diff --git a/src/device/gpu.rs b/src/device/gpu.rs index 4dc8344a..30145b69 100644 --- a/src/device/gpu.rs +++ b/src/device/gpu.rs @@ -3,7 +3,7 @@ use crate::hal::{BufferDirection, Dma, Hal}; use crate::queue::VirtQueue; use crate::transport::{read_config, Transport}; -use crate::volatile::{ReadOnly, Volatile, WriteOnly}; +use crate::volatile::{ReadOnly, WriteOnly}; use crate::{pages, Error, Result, PAGE_SIZE}; use alloc::boxed::Box; use bitflags::bitflags; @@ -302,7 +302,7 @@ struct Config { /// Specifies the maximum number of scanouts supported by the device. /// /// Minimum value is 1, maximum value is 16. - num_scanouts: Volatile, + num_scanouts: ReadOnly, } /// Display configuration has changed.