diff --git a/03_uart1/src/uart.rs b/03_uart1/src/uart.rs index ca6316b9..1c67f3c8 100644 --- a/03_uart1/src/uart.rs +++ b/03_uart1/src/uart.rs @@ -30,22 +30,22 @@ const MINI_UART_BASE: u32 = MMIO_BASE + 0x21_5000; /// Auxilary mini UART registers #[allow(non_snake_case)] -#[repr(C, packed)] +#[repr(C)] struct Registers { - _reserved0: u32, // 0x00 - ENABLES: RW, // 0x04 - _reserved1: [u8; 0x38], // 0x08 - MU_IO: RW, // 0x40 - MU_IER: RW, // 0x44 - MU_IIR: RW, // 0x48 - MU_LCR: RW, // 0x4C - MU_MCR: RW, // 0x50 - MU_LSR: RW, // 0x54 - MU_MSR: RW, // 0x58 - MU_SCRATCH: RW, // 0x5C - MU_CNTL: RW, // 0x60 - MU_STAT: RW, // 0x64 - MU_BAUD: RW, // 0x68 + __reserved_0: u32, // 0x00 + ENABLES: RW, // 0x04 + __reserved_1: [u32; 14], // 0x08 + MU_IO: RW, // 0x40 + MU_IER: RW, // 0x44 + MU_IIR: RW, // 0x48 + MU_LCR: RW, // 0x4C + MU_MCR: RW, // 0x50 + MU_LSR: RW, // 0x54 + MU_MSR: RW, // 0x58 + MU_SCRATCH: RW, // 0x5C + MU_CNTL: RW, // 0x60 + MU_STAT: RW, // 0x64 + MU_BAUD: RW, // 0x68 } pub struct MiniUart { diff --git a/04_mailboxes/src/mbox.rs b/04_mailboxes/src/mbox.rs index 7bad0bfb..75465290 100644 --- a/04_mailboxes/src/mbox.rs +++ b/04_mailboxes/src/mbox.rs @@ -28,15 +28,15 @@ use volatile_register::{RO, WO}; pub const VIDEOCORE_MBOX: u32 = MMIO_BASE + 0xB880; #[allow(non_snake_case)] -#[repr(C, packed)] +#[repr(C)] pub struct Registers { - READ: RO, // 0x00 - reserved: [u8; 0xC], // 0x04 - POLL: RO, // 0x10 - SENDER: RO, // 0x14 - STATUS: RO, // 0x18 - CONFIG: RO, // 0x1C - WRITE: WO, // 0x20 + READ: RO, // 0x00 + __reserved_0: [u32; 3], // 0x04 + POLL: RO, // 0x10 + SENDER: RO, // 0x14 + STATUS: RO, // 0x18 + CONFIG: RO, // 0x1C + WRITE: WO, // 0x20 } // Custom errors diff --git a/04_mailboxes/src/uart.rs b/04_mailboxes/src/uart.rs index 39b0ab08..49d2a39a 100644 --- a/04_mailboxes/src/uart.rs +++ b/04_mailboxes/src/uart.rs @@ -30,22 +30,22 @@ const MINI_UART_BASE: u32 = MMIO_BASE + 0x21_5000; /// Auxilary mini UART registers #[allow(non_snake_case)] -#[repr(C, packed)] +#[repr(C)] struct Registers { - _reserved0: u32, // 0x00 - ENABLES: RW, // 0x04 - _reserved1: [u8; 0x38], // 0x08 - MU_IO: RW, // 0x40 - MU_IER: RW, // 0x44 - MU_IIR: RW, // 0x48 - MU_LCR: RW, // 0x4C - MU_MCR: RW, // 0x50 - MU_LSR: RW, // 0x54 - MU_MSR: RW, // 0x58 - MU_SCRATCH: RW, // 0x5C - MU_CNTL: RW, // 0x60 - MU_STAT: RW, // 0x64 - MU_BAUD: RW, // 0x68 + __reserved_0: u32, // 0x00 + ENABLES: RW, // 0x04 + __reserved_1: [u32; 14], // 0x08 + MU_IO: RW, // 0x40 + MU_IER: RW, // 0x44 + MU_IIR: RW, // 0x48 + MU_LCR: RW, // 0x4C + MU_MCR: RW, // 0x50 + MU_LSR: RW, // 0x54 + MU_MSR: RW, // 0x58 + MU_SCRATCH: RW, // 0x5C + MU_CNTL: RW, // 0x60 + MU_STAT: RW, // 0x64 + MU_BAUD: RW, // 0x68 } pub struct MiniUart { diff --git a/05_uart0/src/mbox.rs b/05_uart0/src/mbox.rs index 3a7676f6..89ce15ae 100644 --- a/05_uart0/src/mbox.rs +++ b/05_uart0/src/mbox.rs @@ -28,15 +28,15 @@ use volatile_register::{RO, WO}; pub const VIDEOCORE_MBOX: u32 = MMIO_BASE + 0xB880; #[allow(non_snake_case)] -#[repr(C, packed)] +#[repr(C)] pub struct Registers { - READ: RO, // 0x00 - reserved: [u8; 0xC], // 0x04 - POLL: RO, // 0x10 - SENDER: RO, // 0x14 - STATUS: RO, // 0x18 - CONFIG: RO, // 0x1C - WRITE: WO, // 0x20 + READ: RO, // 0x00 + __reserved_0: [u32; 3], // 0x04 + POLL: RO, // 0x10 + SENDER: RO, // 0x14 + STATUS: RO, // 0x18 + CONFIG: RO, // 0x1C + WRITE: WO, // 0x20 } // Custom errors diff --git a/05_uart0/src/uart.rs b/05_uart0/src/uart.rs index b605f8dc..71e1983c 100644 --- a/05_uart0/src/uart.rs +++ b/05_uart0/src/uart.rs @@ -32,18 +32,18 @@ const UART_BASE: u32 = MMIO_BASE + 0x20_1000; // PL011 UART registers #[allow(non_snake_case)] -#[repr(C, packed)] +#[repr(C)] struct Registers { - DR: RW, // 0x00 - reserved0: [u8; 0x14], // 0x04 - FR: RO, // 0x18 - reserved1: u64, // 0x1C - IBRD: WO, // 0x24 - FBRD: WO, // 0x28 - LCRH: WO, // 0x2C - CR: WO, // 0x30 - reserved3: [u8; 0x10], // 0x34 - ICR: WO, // 0x44 + DR: RW, // 0x00 + __reserved_0: [u32; 5], // 0x04 + FR: RO, // 0x18 + __reserved_1: [u32; 2], // 0x1c + IBRD: WO, // 0x24 + FBRD: WO, // 0x28 + LCRH: WO, // 0x2C + CR: WO, // 0x30 + __reserved_2: [u32; 4], // 0x34 + ICR: WO, // 0x44 } pub enum UartError { diff --git a/06_random/src/mbox.rs b/06_random/src/mbox.rs index 7dc95d01..cfa4bfcc 100644 --- a/06_random/src/mbox.rs +++ b/06_random/src/mbox.rs @@ -28,15 +28,15 @@ use volatile_register::{RO, WO}; pub const VIDEOCORE_MBOX: u32 = MMIO_BASE + 0xB880; #[allow(non_snake_case)] -#[repr(C, packed)] +#[repr(C)] pub struct Registers { - READ: RO, // 0x00 - reserved: [u8; 0xC], // 0x04 - POLL: RO, // 0x10 - SENDER: RO, // 0x14 - STATUS: RO, // 0x18 - CONFIG: RO, // 0x1C - WRITE: WO, // 0x20 + READ: RO, // 0x00 + __reserved_0: [u32; 3], // 0x04 + POLL: RO, // 0x10 + SENDER: RO, // 0x14 + STATUS: RO, // 0x18 + CONFIG: RO, // 0x1C + WRITE: WO, // 0x20 } // Custom errors diff --git a/06_random/src/rand.rs b/06_random/src/rand.rs index 4607f670..8c3f3193 100644 --- a/06_random/src/rand.rs +++ b/06_random/src/rand.rs @@ -33,7 +33,7 @@ struct Registers { CTRL: RW, // 0x00 STATUS: RW, // 0x04 DATA: RO, // 0x08 - _reserved: u32, // 0x0c + __reserved_0: u32, // 0x0c INT_MASK: RW, // 0x10 } diff --git a/06_random/src/uart.rs b/06_random/src/uart.rs index b605f8dc..71e1983c 100644 --- a/06_random/src/uart.rs +++ b/06_random/src/uart.rs @@ -32,18 +32,18 @@ const UART_BASE: u32 = MMIO_BASE + 0x20_1000; // PL011 UART registers #[allow(non_snake_case)] -#[repr(C, packed)] +#[repr(C)] struct Registers { - DR: RW, // 0x00 - reserved0: [u8; 0x14], // 0x04 - FR: RO, // 0x18 - reserved1: u64, // 0x1C - IBRD: WO, // 0x24 - FBRD: WO, // 0x28 - LCRH: WO, // 0x2C - CR: WO, // 0x30 - reserved3: [u8; 0x10], // 0x34 - ICR: WO, // 0x44 + DR: RW, // 0x00 + __reserved_0: [u32; 5], // 0x04 + FR: RO, // 0x18 + __reserved_1: [u32; 2], // 0x1c + IBRD: WO, // 0x24 + FBRD: WO, // 0x28 + LCRH: WO, // 0x2C + CR: WO, // 0x30 + __reserved_2: [u32; 4], // 0x34 + ICR: WO, // 0x44 } pub enum UartError {