@@ -126,8 +126,8 @@ diff -uNr 04_safe_globals/Cargo.toml 05_drivers_gpio_uart/Cargo.toml
126126 default = []
127127- bsp_rpi3 = []
128128- bsp_rpi4 = []
129- + bsp_rpi3 = ["register "]
130- + bsp_rpi4 = ["register "]
129+ + bsp_rpi3 = ["tock-registers "]
130+ + bsp_rpi4 = ["tock-registers "]
131131
132132 [[bin]]
133133 name = "kernel"
@@ -136,11 +136,11 @@ diff -uNr 04_safe_globals/Cargo.toml 05_drivers_gpio_uart/Cargo.toml
136136 [dependencies]
137137
138138+ # Optional dependencies
139- + register = { version = "1.x .x", optional = true }
139+ + tock-registers = { version = "0.7 .x", default-features = false, features = ["register_types"] , optional = true }
140140+
141141 # Platform specific dependencies
142142 [target.'cfg(target_arch = "aarch64")'.dependencies]
143- cortex-a = { version = "5 .x.x" }
143+ cortex-a = { version = "6 .x.x" }
144144
145145diff -uNr 04_safe_globals/Makefile 05_drivers_gpio_uart/Makefile
146146--- 04_safe_globals/Makefile
@@ -220,7 +220,7 @@ diff -uNr 04_safe_globals/src/_arch/aarch64/cpu.rs 05_drivers_gpio_uart/src/_arc
220220diff -uNr 04_safe_globals/src/bsp/device_driver/bcm/bcm2xxx_gpio.rs 05_drivers_gpio_uart/src/bsp/device_driver/bcm/bcm2xxx_gpio.rs
221221--- 04_safe_globals/src/bsp/device_driver/bcm/bcm2xxx_gpio.rs
222222+++ 05_drivers_gpio_uart/src/bsp/device_driver/bcm/bcm2xxx_gpio.rs
223- @@ -0,0 +1,221 @@
223+ @@ -0,0 +1,225 @@
224224+ // SPDX-License-Identifier: MIT OR Apache-2.0
225225+ //
226226+ // Copyright (c) 2018-2021 Andre Richter <andre.o.richter@gmail.com>
@@ -231,7 +231,11 @@ diff -uNr 04_safe_globals/src/bsp/device_driver/bcm/bcm2xxx_gpio.rs 05_drivers_g
231231+ bsp::device_driver::common::MMIODerefWrapper, driver, synchronization,
232232+ synchronization::NullLock,
233233+ };
234- + use register::{mmio::*, register_bitfields, register_structs};
234+ + use tock_registers::{
235+ + interfaces::{ReadWriteable, Writeable},
236+ + register_bitfields, register_structs,
237+ + registers::ReadWrite,
238+ + };
235239+
236240+ //--------------------------------------------------------------------------------------------------
237241+ // Private Definitions
@@ -446,7 +450,7 @@ diff -uNr 04_safe_globals/src/bsp/device_driver/bcm/bcm2xxx_gpio.rs 05_drivers_g
446450diff -uNr 04_safe_globals/src/bsp/device_driver/bcm/bcm2xxx_pl011_uart.rs 05_drivers_gpio_uart/src/bsp/device_driver/bcm/bcm2xxx_pl011_uart.rs
447451--- 04_safe_globals/src/bsp/device_driver/bcm/bcm2xxx_pl011_uart.rs
448452+++ 05_drivers_gpio_uart/src/bsp/device_driver/bcm/bcm2xxx_pl011_uart.rs
449- @@ -0,0 +1,403 @@
453+ @@ -0,0 +1,408 @@
450454+ // SPDX-License-Identifier: MIT OR Apache-2.0
451455+ //
452456+ // Copyright (c) 2018-2021 Andre Richter <andre.o.richter@gmail.com>
@@ -463,7 +467,11 @@ diff -uNr 04_safe_globals/src/bsp/device_driver/bcm/bcm2xxx_pl011_uart.rs 05_dri
463467+ synchronization::NullLock,
464468+ };
465469+ use core::fmt;
466- + use register::{mmio::*, register_bitfields, register_structs};
470+ + use tock_registers::{
471+ + interfaces::{Readable, Writeable},
472+ + register_bitfields, register_structs,
473+ + registers::{ReadOnly, ReadWrite, WriteOnly},
474+ + };
467475+
468476+ //--------------------------------------------------------------------------------------------------
469477+ // Private Definitions
@@ -530,6 +538,7 @@ diff -uNr 04_safe_globals/src/bsp/device_driver/bcm/bcm2xxx_pl011_uart.rs 05_dri
530538+ LCR_H [
531539+ /// Word length. These bits indicate the number of data bits transmitted or received in a
532540+ /// frame.
541+ + #[allow(clippy::enum_variant_names)]
533542+ WLEN OFFSET(5) NUMBITS(2) [
534543+ FiveBit = 0b00,
535544+ SixBit = 0b01,
0 commit comments