aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCorey Schuhen <[email protected]>2024-03-03 16:23:40 +1000
committerCorey Schuhen <[email protected]>2024-03-07 17:45:01 +1000
commitfecb65b98862fe4c8c83df0be60dc6810625fa65 (patch)
treeb4512d35602067f32eb772f347ab44a20cb18251
parentf736f1b27fa71b3f9339aae876c51f381f89914a (diff)
Make use of internal BXCAN crate work. Tested on stm32f103 with real bus and HIL tests.
Fix
-rw-r--r--embassy-stm32/Cargo.toml4
-rw-r--r--embassy-stm32/src/can/bx/filter.rs14
-rw-r--r--embassy-stm32/src/can/bx/frame.rs14
-rw-r--r--embassy-stm32/src/can/bx/interrupt.rs4
-rw-r--r--embassy-stm32/src/can/bx/mod.rs20
-rw-r--r--embassy-stm32/src/can/bx/pac/can.rs96
-rw-r--r--embassy-stm32/src/can/bx/pac/can/btr.rs18
-rw-r--r--embassy-stm32/src/can/bx/pac/can/esr.rs18
-rw-r--r--embassy-stm32/src/can/bx/pac/can/fa1r.rs34
-rw-r--r--embassy-stm32/src/can/bx/pac/can/fb.rs16
-rw-r--r--embassy-stm32/src/can/bx/pac/can/fb/fr1.rs8
-rw-r--r--embassy-stm32/src/can/bx/pac/can/fb/fr2.rs8
-rw-r--r--embassy-stm32/src/can/bx/pac/can/ffa1r.rs34
-rw-r--r--embassy-stm32/src/can/bx/pac/can/fm1r.rs34
-rw-r--r--embassy-stm32/src/can/bx/pac/can/fmr.rs10
-rw-r--r--embassy-stm32/src/can/bx/pac/can/fs1r.rs34
-rw-r--r--embassy-stm32/src/can/bx/pac/can/ier.rs34
-rw-r--r--embassy-stm32/src/can/bx/pac/can/mcr.rs26
-rw-r--r--embassy-stm32/src/can/bx/pac/can/msr.rs24
-rw-r--r--embassy-stm32/src/can/bx/pac/can/rfr.rs18
-rw-r--r--embassy-stm32/src/can/bx/pac/can/rx.rs24
-rw-r--r--embassy-stm32/src/can/bx/pac/can/rx/rdhr.rs10
-rw-r--r--embassy-stm32/src/can/bx/pac/can/rx/rdlr.rs10
-rw-r--r--embassy-stm32/src/can/bx/pac/can/rx/rdtr.rs8
-rw-r--r--embassy-stm32/src/can/bx/pac/can/rx/rir.rs10
-rw-r--r--embassy-stm32/src/can/bx/pac/can/tsr.rs50
-rw-r--r--embassy-stm32/src/can/bx/pac/can/tx.rs32
-rw-r--r--embassy-stm32/src/can/bx/pac/can/tx/tdhr.rs14
-rw-r--r--embassy-stm32/src/can/bx/pac/can/tx/tdlr.rs14
-rw-r--r--embassy-stm32/src/can/bx/pac/can/tx/tdtr.rs12
-rw-r--r--embassy-stm32/src/can/bx/pac/can/tx/tir.rs16
-rw-r--r--embassy-stm32/src/can/bxcan.rs75
-rw-r--r--examples/stm32f1/src/bin/can.rs4
-rw-r--r--tests/stm32/src/bin/can.rs4
34 files changed, 376 insertions, 375 deletions
diff --git a/embassy-stm32/Cargo.toml b/embassy-stm32/Cargo.toml
index b326c26fd..e5e7ba3e3 100644
--- a/embassy-stm32/Cargo.toml
+++ b/embassy-stm32/Cargo.toml
@@ -72,7 +72,6 @@ critical-section = "1.1"
72#stm32-metapac = { version = "15" } 72#stm32-metapac = { version = "15" }
73stm32-metapac = { git = "https://github.com/embassy-rs/stm32-data-generated", tag = "stm32-data-e7f91751fbbf856e0cb30e50ae6db79f0409b085" } 73stm32-metapac = { git = "https://github.com/embassy-rs/stm32-data-generated", tag = "stm32-data-e7f91751fbbf856e0cb30e50ae6db79f0409b085" }
74vcell = "0.1.3" 74vcell = "0.1.3"
75bxcan = "0.7.0"
76nb = "1.0.0" 75nb = "1.0.0"
77stm32-fmc = "0.3.0" 76stm32-fmc = "0.3.0"
78cfg-if = "1.0.0" 77cfg-if = "1.0.0"
@@ -84,6 +83,7 @@ document-features = "0.2.7"
84 83
85static_assertions = { version = "1.1" } 84static_assertions = { version = "1.1" }
86volatile-register = { version = "0.2.1" } 85volatile-register = { version = "0.2.1" }
86bitflags = "2.4.2"
87 87
88 88
89 89
@@ -104,7 +104,7 @@ default = ["rt"]
104rt = ["stm32-metapac/rt"] 104rt = ["stm32-metapac/rt"]
105 105
106## Use [`defmt`](https://docs.rs/defmt/latest/defmt/) for logging 106## Use [`defmt`](https://docs.rs/defmt/latest/defmt/) for logging
107defmt = ["dep:defmt", "bxcan/unstable-defmt", "embassy-sync/defmt", "embassy-embedded-hal/defmt", "embassy-hal-internal/defmt", "embedded-io-async/defmt-03", "embassy-usb-driver/defmt", "embassy-net-driver/defmt", "embassy-time?/defmt"] 107defmt = ["dep:defmt", "embassy-sync/defmt", "embassy-embedded-hal/defmt", "embassy-hal-internal/defmt", "embedded-io-async/defmt-03", "embassy-usb-driver/defmt", "embassy-net-driver/defmt", "embassy-time?/defmt"]
108 108
109exti = [] 109exti = []
110low-power = [ "dep:embassy-executor", "embassy-executor?/arch-cortex-m", "time" ] 110low-power = [ "dep:embassy-executor", "embassy-executor?/arch-cortex-m", "time" ]
diff --git a/embassy-stm32/src/can/bx/filter.rs b/embassy-stm32/src/can/bx/filter.rs
index acd2e4688..0213e0f44 100644
--- a/embassy-stm32/src/can/bx/filter.rs
+++ b/embassy-stm32/src/can/bx/filter.rs
@@ -2,8 +2,8 @@
2 2
3use core::marker::PhantomData; 3use core::marker::PhantomData;
4 4
5use crate::pac::can::RegisterBlock; 5use crate::can::bx::pac::can::RegisterBlock;
6use crate::{ExtendedId, Fifo, FilterOwner, Id, Instance, MasterInstance, StandardId}; 6use crate::can::bx::{ExtendedId, Fifo, FilterOwner, Id, Instance, MasterInstance, StandardId};
7 7
8const F32_RTR: u32 = 0b010; // set the RTR bit to match remote frames 8const F32_RTR: u32 = 0b010; // set the RTR bit to match remote frames
9const F32_IDE: u32 = 0b100; // set the IDE bit to match extended identifiers 9const F32_IDE: u32 = 0b100; // set the IDE bit to match extended identifiers
@@ -14,19 +14,19 @@ const F16_IDE: u16 = 0b01000;
14/// 14///
15/// This can match data and remote frames using standard IDs. 15/// This can match data and remote frames using standard IDs.
16#[derive(Debug, Copy, Clone, Eq, PartialEq)] 16#[derive(Debug, Copy, Clone, Eq, PartialEq)]
17#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))] 17#[cfg_attr(feature = "defmt", derive(defmt::Format))]
18pub struct ListEntry16(u16); 18pub struct ListEntry16(u16);
19 19
20/// A 32-bit filter list entry. 20/// A 32-bit filter list entry.
21/// 21///
22/// This can match data and remote frames using extended or standard IDs. 22/// This can match data and remote frames using extended or standard IDs.
23#[derive(Debug, Copy, Clone, Eq, PartialEq)] 23#[derive(Debug, Copy, Clone, Eq, PartialEq)]
24#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))] 24#[cfg_attr(feature = "defmt", derive(defmt::Format))]
25pub struct ListEntry32(u32); 25pub struct ListEntry32(u32);
26 26
27/// A 16-bit identifier mask. 27/// A 16-bit identifier mask.
28#[derive(Debug, Copy, Clone)] 28#[derive(Debug, Copy, Clone)]
29#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))] 29#[cfg_attr(feature = "defmt", derive(defmt::Format))]
30pub struct Mask16 { 30pub struct Mask16 {
31 id: u16, 31 id: u16,
32 mask: u16, 32 mask: u16,
@@ -34,7 +34,7 @@ pub struct Mask16 {
34 34
35/// A 32-bit identifier mask. 35/// A 32-bit identifier mask.
36#[derive(Debug, Copy, Clone)] 36#[derive(Debug, Copy, Clone)]
37#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))] 37#[cfg_attr(feature = "defmt", derive(defmt::Format))]
38pub struct Mask32 { 38pub struct Mask32 {
39 id: u32, 39 id: u32,
40 mask: u32, 40 mask: u32,
@@ -170,7 +170,7 @@ impl Mask32 {
170 170
171/// The configuration of a filter bank. 171/// The configuration of a filter bank.
172#[derive(Debug, Copy, Clone)] 172#[derive(Debug, Copy, Clone)]
173#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))] 173#[cfg_attr(feature = "defmt", derive(defmt::Format))]
174pub enum BankConfig { 174pub enum BankConfig {
175 List16([ListEntry16; 4]), 175 List16([ListEntry16; 4]),
176 List32([ListEntry32; 2]), 176 List32([ListEntry32; 2]),
diff --git a/embassy-stm32/src/can/bx/frame.rs b/embassy-stm32/src/can/bx/frame.rs
index c1089b044..a7e8d5b20 100644
--- a/embassy-stm32/src/can/bx/frame.rs
+++ b/embassy-stm32/src/can/bx/frame.rs
@@ -1,14 +1,14 @@
1#[cfg(test)] 1#[cfg(test)]
2mod tests;
3 2
4use core::cmp::Ordering; 3use core::cmp::Ordering;
5use core::ops::{Deref, DerefMut}; 4use core::ops::{Deref, DerefMut};
6 5
7use crate::{Id, IdReg}; 6use crate::can::bx::{Id, IdReg};
8 7
9/// A CAN data or remote frame. 8/// A CAN data or remote frame.
10#[derive(Clone, Debug, Eq)] 9#[derive(Clone, Debug, Eq)]
11#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))] 10//#[cfg_attr(feature = "defmt", derive(defmt::Format))]
11#[cfg_attr(feature = "defmt", derive(defmt::Format))]
12pub struct Frame { 12pub struct Frame {
13 pub(crate) id: IdReg, 13 pub(crate) id: IdReg,
14 pub(crate) data: Data, 14 pub(crate) data: Data,
@@ -128,20 +128,20 @@ pub struct FramePriority(IdReg);
128/// Ordering is based on the Identifier and frame type (data vs. remote) and can be used to sort 128/// Ordering is based on the Identifier and frame type (data vs. remote) and can be used to sort
129/// frames by priority. 129/// frames by priority.
130impl Ord for FramePriority { 130impl Ord for FramePriority {
131 fn cmp(&self, other: &Self) -> Ordering { 131 fn cmp(&self, other: &Self) -> core::cmp::Ordering {
132 self.0.cmp(&other.0) 132 self.0.cmp(&other.0)
133 } 133 }
134} 134}
135 135
136impl PartialOrd for FramePriority { 136impl PartialOrd for FramePriority {
137 fn partial_cmp(&self, other: &Self) -> Option<Ordering> { 137 fn partial_cmp(&self, other: &Self) -> Option<core::cmp::Ordering> {
138 Some(self.cmp(other)) 138 Some(self.cmp(other))
139 } 139 }
140} 140}
141 141
142impl PartialEq for FramePriority { 142impl PartialEq for FramePriority {
143 fn eq(&self, other: &Self) -> bool { 143 fn eq(&self, other: &Self) -> bool {
144 self.cmp(other) == Ordering::Equal 144 self.cmp(other) == core::cmp::Ordering::Equal
145 } 145 }
146} 146}
147 147
@@ -227,7 +227,7 @@ impl PartialEq for Data {
227 227
228impl Eq for Data {} 228impl Eq for Data {}
229 229
230#[cfg(feature = "unstable-defmt")] 230#[cfg(feature = "defmt")]
231impl defmt::Format for Data { 231impl defmt::Format for Data {
232 fn format(&self, fmt: defmt::Formatter<'_>) { 232 fn format(&self, fmt: defmt::Formatter<'_>) {
233 self.as_ref().format(fmt) 233 self.as_ref().format(fmt)
diff --git a/embassy-stm32/src/can/bx/interrupt.rs b/embassy-stm32/src/can/bx/interrupt.rs
index 17aacf8e0..dac4b7b3c 100644
--- a/embassy-stm32/src/can/bx/interrupt.rs
+++ b/embassy-stm32/src/can/bx/interrupt.rs
@@ -3,7 +3,7 @@
3use core::ops; 3use core::ops;
4 4
5#[allow(unused_imports)] // for intra-doc links only 5#[allow(unused_imports)] // for intra-doc links only
6use crate::{Can, Rx0}; 6use crate::can::bx::{Can, Rx0};
7 7
8/// bxCAN interrupt sources. 8/// bxCAN interrupt sources.
9/// 9///
@@ -18,7 +18,7 @@ use crate::{Can, Rx0};
18/// This means that some of the interrupts listed here will result in the same interrupt handler 18/// This means that some of the interrupts listed here will result in the same interrupt handler
19/// being invoked. 19/// being invoked.
20#[derive(Debug, Copy, Clone, Eq, PartialEq)] 20#[derive(Debug, Copy, Clone, Eq, PartialEq)]
21#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))] 21#[cfg_attr(feature = "defmt", derive(defmt::Format))]
22#[non_exhaustive] 22#[non_exhaustive]
23pub enum Interrupt { 23pub enum Interrupt {
24 /// Fires the **TX** interrupt when one of the transmit mailboxes returns to empty state. 24 /// Fires the **TX** interrupt when one of the transmit mailboxes returns to empty state.
diff --git a/embassy-stm32/src/can/bx/mod.rs b/embassy-stm32/src/can/bx/mod.rs
index 3cfc09c85..2789d1ff9 100644
--- a/embassy-stm32/src/can/bx/mod.rs
+++ b/embassy-stm32/src/can/bx/mod.rs
@@ -23,7 +23,7 @@
23//! 23//!
24//! | Feature | Description | 24//! | Feature | Description |
25//! |---------|-------------| 25//! |---------|-------------|
26//! | `unstable-defmt` | Implements [`defmt`]'s `Format` trait for the types in this crate.[^1] | 26//! | `defmt` | Implements [`defmt`]'s `Format` trait for the types in this crate.[^1] |
27//! 27//!
28//! [^1]: The specific version of defmt is unspecified and may be updated in a patch release. 28//! [^1]: The specific version of defmt is unspecified and may be updated in a patch release.
29//! 29//!
@@ -36,7 +36,7 @@
36#![no_std] 36#![no_std]
37#![allow(clippy::unnecessary_operation)] // lint is bugged 37#![allow(clippy::unnecessary_operation)] // lint is bugged
38 38
39mod embedded_hal; 39//mod embedded_hal;
40pub mod filter; 40pub mod filter;
41mod frame; 41mod frame;
42mod id; 42mod id;
@@ -47,11 +47,11 @@ mod pac;
47 47
48pub use id::{ExtendedId, Id, StandardId}; 48pub use id::{ExtendedId, Id, StandardId};
49 49
50pub use crate::frame::{Data, Frame, FramePriority}; 50pub use crate::can::bx::frame::{Data, Frame, FramePriority};
51pub use crate::interrupt::{Interrupt, Interrupts}; 51pub use crate::can::bx::interrupt::{Interrupt, Interrupts};
52pub use crate::pac::can::RegisterBlock; 52pub use crate::can::bx::pac::can::RegisterBlock;
53 53
54use crate::filter::MasterFilters; 54use crate::can::bx::filter::MasterFilters;
55use core::cmp::{Ord, Ordering}; 55use core::cmp::{Ord, Ordering};
56use core::convert::{Infallible, TryInto}; 56use core::convert::{Infallible, TryInto};
57use core::marker::PhantomData; 57use core::marker::PhantomData;
@@ -124,7 +124,7 @@ pub enum Error {
124 124
125/// Error that indicates that an incoming message has been lost due to buffer overrun. 125/// Error that indicates that an incoming message has been lost due to buffer overrun.
126#[derive(Debug, Clone, Copy, PartialEq, Eq)] 126#[derive(Debug, Clone, Copy, PartialEq, Eq)]
127#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))] 127#[cfg_attr(feature = "defmt", derive(defmt::Format))]
128pub struct OverrunError { 128pub struct OverrunError {
129 _priv: (), 129 _priv: (),
130} 130}
@@ -140,7 +140,7 @@ pub struct OverrunError {
140/// have a higher priority than extended frames and data frames have a higher 140/// have a higher priority than extended frames and data frames have a higher
141/// priority than remote frames. 141/// priority than remote frames.
142#[derive(Clone, Copy, Debug, PartialEq, Eq)] 142#[derive(Clone, Copy, Debug, PartialEq, Eq)]
143#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))] 143#[cfg_attr(feature = "defmt", derive(defmt::Format))]
144struct IdReg(u32); 144struct IdReg(u32);
145 145
146impl IdReg { 146impl IdReg {
@@ -1060,7 +1060,7 @@ fn receive_fifo(can: &RegisterBlock, fifo_nr: usize) -> nb::Result<Frame, Overru
1060 1060
1061/// Identifies one of the two receive FIFOs. 1061/// Identifies one of the two receive FIFOs.
1062#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord)] 1062#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord)]
1063#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))] 1063#[cfg_attr(feature = "defmt", derive(defmt::Format))]
1064pub enum Fifo { 1064pub enum Fifo {
1065 Fifo0 = 0, 1065 Fifo0 = 0,
1066 Fifo1 = 1, 1066 Fifo1 = 1,
@@ -1068,7 +1068,7 @@ pub enum Fifo {
1068 1068
1069/// Identifies one of the three transmit mailboxes. 1069/// Identifies one of the three transmit mailboxes.
1070#[derive(Debug, Copy, Clone, Ord, PartialOrd, Eq, PartialEq)] 1070#[derive(Debug, Copy, Clone, Ord, PartialOrd, Eq, PartialEq)]
1071#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))] 1071#[cfg_attr(feature = "defmt", derive(defmt::Format))]
1072pub enum Mailbox { 1072pub enum Mailbox {
1073 /// Transmit mailbox 0 1073 /// Transmit mailbox 0
1074 Mailbox0 = 0, 1074 Mailbox0 = 0,
diff --git a/embassy-stm32/src/can/bx/pac/can.rs b/embassy-stm32/src/can/bx/pac/can.rs
index f190fdff4..726f5d0ae 100644
--- a/embassy-stm32/src/can/bx/pac/can.rs
+++ b/embassy-stm32/src/can/bx/pac/can.rs
@@ -79,135 +79,135 @@ pub struct FB {
79#[doc = r"Register block"] 79#[doc = r"Register block"]
80#[doc = "CAN Filter Bank cluster"] 80#[doc = "CAN Filter Bank cluster"]
81pub mod fb; 81pub mod fb;
82#[doc = "CAN_MCR\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [mcr](mcr) module"] 82#[doc = "CAN_MCR\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [mcr](mcr) module"]
83pub type MCR = crate::Reg<u32, _MCR>; 83pub type MCR = crate::can::bx::Reg<u32, _MCR>;
84#[allow(missing_docs)] 84#[allow(missing_docs)]
85#[doc(hidden)] 85#[doc(hidden)]
86pub struct _MCR; 86pub struct _MCR;
87#[doc = "`read()` method returns [mcr::R](mcr::R) reader structure"] 87#[doc = "`read()` method returns [mcr::R](mcr::R) reader structure"]
88impl crate::Readable for MCR {} 88impl crate::can::bx::Readable for MCR {}
89#[doc = "`write(|w| ..)` method takes [mcr::W](mcr::W) writer structure"] 89#[doc = "`write(|w| ..)` method takes [mcr::W](mcr::W) writer structure"]
90impl crate::Writable for MCR {} 90impl crate::can::bx::Writable for MCR {}
91#[doc = "CAN_MCR"] 91#[doc = "CAN_MCR"]
92pub mod mcr; 92pub mod mcr;
93#[doc = "CAN_MSR\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [msr](msr) module"] 93#[doc = "CAN_MSR\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [msr](msr) module"]
94pub type MSR = crate::Reg<u32, _MSR>; 94pub type MSR = crate::can::bx::Reg<u32, _MSR>;
95#[allow(missing_docs)] 95#[allow(missing_docs)]
96#[doc(hidden)] 96#[doc(hidden)]
97pub struct _MSR; 97pub struct _MSR;
98#[doc = "`read()` method returns [msr::R](msr::R) reader structure"] 98#[doc = "`read()` method returns [msr::R](msr::R) reader structure"]
99impl crate::Readable for MSR {} 99impl crate::can::bx::Readable for MSR {}
100#[doc = "`write(|w| ..)` method takes [msr::W](msr::W) writer structure"] 100#[doc = "`write(|w| ..)` method takes [msr::W](msr::W) writer structure"]
101impl crate::Writable for MSR {} 101impl crate::can::bx::Writable for MSR {}
102#[doc = "CAN_MSR"] 102#[doc = "CAN_MSR"]
103pub mod msr; 103pub mod msr;
104#[doc = "CAN_TSR\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tsr](tsr) module"] 104#[doc = "CAN_TSR\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tsr](tsr) module"]
105pub type TSR = crate::Reg<u32, _TSR>; 105pub type TSR = crate::can::bx::Reg<u32, _TSR>;
106#[allow(missing_docs)] 106#[allow(missing_docs)]
107#[doc(hidden)] 107#[doc(hidden)]
108pub struct _TSR; 108pub struct _TSR;
109#[doc = "`read()` method returns [tsr::R](tsr::R) reader structure"] 109#[doc = "`read()` method returns [tsr::R](tsr::R) reader structure"]
110impl crate::Readable for TSR {} 110impl crate::can::bx::Readable for TSR {}
111#[doc = "`write(|w| ..)` method takes [tsr::W](tsr::W) writer structure"] 111#[doc = "`write(|w| ..)` method takes [tsr::W](tsr::W) writer structure"]
112impl crate::Writable for TSR {} 112impl crate::can::bx::Writable for TSR {}
113#[doc = "CAN_TSR"] 113#[doc = "CAN_TSR"]
114pub mod tsr; 114pub mod tsr;
115#[doc = "CAN_RF0R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rfr](rfr) module"] 115#[doc = "CAN_RF0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rfr](rfr) module"]
116pub type RFR = crate::Reg<u32, _RFR>; 116pub type RFR = crate::can::bx::Reg<u32, _RFR>;
117#[allow(missing_docs)] 117#[allow(missing_docs)]
118#[doc(hidden)] 118#[doc(hidden)]
119pub struct _RFR; 119pub struct _RFR;
120#[doc = "`read()` method returns [rfr::R](rfr::R) reader structure"] 120#[doc = "`read()` method returns [rfr::R](rfr::R) reader structure"]
121impl crate::Readable for RFR {} 121impl crate::can::bx::Readable for RFR {}
122#[doc = "`write(|w| ..)` method takes [rfr::W](rfr::W) writer structure"] 122#[doc = "`write(|w| ..)` method takes [rfr::W](rfr::W) writer structure"]
123impl crate::Writable for RFR {} 123impl crate::can::bx::Writable for RFR {}
124#[doc = "CAN_RF0R"] 124#[doc = "CAN_RF0R"]
125pub mod rfr; 125pub mod rfr;
126#[doc = "CAN_IER\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [ier](ier) module"] 126#[doc = "CAN_IER\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [ier](ier) module"]
127pub type IER = crate::Reg<u32, _IER>; 127pub type IER = crate::can::bx::Reg<u32, _IER>;
128#[allow(missing_docs)] 128#[allow(missing_docs)]
129#[doc(hidden)] 129#[doc(hidden)]
130pub struct _IER; 130pub struct _IER;
131#[doc = "`read()` method returns [ier::R](ier::R) reader structure"] 131#[doc = "`read()` method returns [ier::R](ier::R) reader structure"]
132impl crate::Readable for IER {} 132impl crate::can::bx::Readable for IER {}
133#[doc = "`write(|w| ..)` method takes [ier::W](ier::W) writer structure"] 133#[doc = "`write(|w| ..)` method takes [ier::W](ier::W) writer structure"]
134impl crate::Writable for IER {} 134impl crate::can::bx::Writable for IER {}
135#[doc = "CAN_IER"] 135#[doc = "CAN_IER"]
136pub mod ier; 136pub mod ier;
137#[doc = "CAN_ESR\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [esr](esr) module"] 137#[doc = "CAN_ESR\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [esr](esr) module"]
138pub type ESR = crate::Reg<u32, _ESR>; 138pub type ESR = crate::can::bx::Reg<u32, _ESR>;
139#[allow(missing_docs)] 139#[allow(missing_docs)]
140#[doc(hidden)] 140#[doc(hidden)]
141pub struct _ESR; 141pub struct _ESR;
142#[doc = "`read()` method returns [esr::R](esr::R) reader structure"] 142#[doc = "`read()` method returns [esr::R](esr::R) reader structure"]
143impl crate::Readable for ESR {} 143impl crate::can::bx::Readable for ESR {}
144#[doc = "`write(|w| ..)` method takes [esr::W](esr::W) writer structure"] 144#[doc = "`write(|w| ..)` method takes [esr::W](esr::W) writer structure"]
145impl crate::Writable for ESR {} 145impl crate::can::bx::Writable for ESR {}
146#[doc = "CAN_ESR"] 146#[doc = "CAN_ESR"]
147pub mod esr; 147pub mod esr;
148#[doc = "CAN_BTR\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [btr](btr) module"] 148#[doc = "CAN_BTR\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [btr](btr) module"]
149pub type BTR = crate::Reg<u32, _BTR>; 149pub type BTR = crate::can::bx::Reg<u32, _BTR>;
150#[allow(missing_docs)] 150#[allow(missing_docs)]
151#[doc(hidden)] 151#[doc(hidden)]
152pub struct _BTR; 152pub struct _BTR;
153#[doc = "`read()` method returns [btr::R](btr::R) reader structure"] 153#[doc = "`read()` method returns [btr::R](btr::R) reader structure"]
154impl crate::Readable for BTR {} 154impl crate::can::bx::Readable for BTR {}
155#[doc = "`write(|w| ..)` method takes [btr::W](btr::W) writer structure"] 155#[doc = "`write(|w| ..)` method takes [btr::W](btr::W) writer structure"]
156impl crate::Writable for BTR {} 156impl crate::can::bx::Writable for BTR {}
157#[doc = "CAN_BTR"] 157#[doc = "CAN_BTR"]
158pub mod btr; 158pub mod btr;
159#[doc = "CAN_FMR\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fmr](fmr) module"] 159#[doc = "CAN_FMR\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fmr](fmr) module"]
160pub type FMR = crate::Reg<u32, _FMR>; 160pub type FMR = crate::can::bx::Reg<u32, _FMR>;
161#[allow(missing_docs)] 161#[allow(missing_docs)]
162#[doc(hidden)] 162#[doc(hidden)]
163pub struct _FMR; 163pub struct _FMR;
164#[doc = "`read()` method returns [fmr::R](fmr::R) reader structure"] 164#[doc = "`read()` method returns [fmr::R](fmr::R) reader structure"]
165impl crate::Readable for FMR {} 165impl crate::can::bx::Readable for FMR {}
166#[doc = "`write(|w| ..)` method takes [fmr::W](fmr::W) writer structure"] 166#[doc = "`write(|w| ..)` method takes [fmr::W](fmr::W) writer structure"]
167impl crate::Writable for FMR {} 167impl crate::can::bx::Writable for FMR {}
168#[doc = "CAN_FMR"] 168#[doc = "CAN_FMR"]
169pub mod fmr; 169pub mod fmr;
170#[doc = "CAN_FM1R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fm1r](fm1r) module"] 170#[doc = "CAN_FM1R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fm1r](fm1r) module"]
171pub type FM1R = crate::Reg<u32, _FM1R>; 171pub type FM1R = crate::can::bx::Reg<u32, _FM1R>;
172#[allow(missing_docs)] 172#[allow(missing_docs)]
173#[doc(hidden)] 173#[doc(hidden)]
174pub struct _FM1R; 174pub struct _FM1R;
175#[doc = "`read()` method returns [fm1r::R](fm1r::R) reader structure"] 175#[doc = "`read()` method returns [fm1r::R](fm1r::R) reader structure"]
176impl crate::Readable for FM1R {} 176impl crate::can::bx::Readable for FM1R {}
177#[doc = "`write(|w| ..)` method takes [fm1r::W](fm1r::W) writer structure"] 177#[doc = "`write(|w| ..)` method takes [fm1r::W](fm1r::W) writer structure"]
178impl crate::Writable for FM1R {} 178impl crate::can::bx::Writable for FM1R {}
179#[doc = "CAN_FM1R"] 179#[doc = "CAN_FM1R"]
180pub mod fm1r; 180pub mod fm1r;
181#[doc = "CAN_FS1R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fs1r](fs1r) module"] 181#[doc = "CAN_FS1R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fs1r](fs1r) module"]
182pub type FS1R = crate::Reg<u32, _FS1R>; 182pub type FS1R = crate::can::bx::Reg<u32, _FS1R>;
183#[allow(missing_docs)] 183#[allow(missing_docs)]
184#[doc(hidden)] 184#[doc(hidden)]
185pub struct _FS1R; 185pub struct _FS1R;
186#[doc = "`read()` method returns [fs1r::R](fs1r::R) reader structure"] 186#[doc = "`read()` method returns [fs1r::R](fs1r::R) reader structure"]
187impl crate::Readable for FS1R {} 187impl crate::can::bx::Readable for FS1R {}
188#[doc = "`write(|w| ..)` method takes [fs1r::W](fs1r::W) writer structure"] 188#[doc = "`write(|w| ..)` method takes [fs1r::W](fs1r::W) writer structure"]
189impl crate::Writable for FS1R {} 189impl crate::can::bx::Writable for FS1R {}
190#[doc = "CAN_FS1R"] 190#[doc = "CAN_FS1R"]
191pub mod fs1r; 191pub mod fs1r;
192#[doc = "CAN_FFA1R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [ffa1r](ffa1r) module"] 192#[doc = "CAN_FFA1R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [ffa1r](ffa1r) module"]
193pub type FFA1R = crate::Reg<u32, _FFA1R>; 193pub type FFA1R = crate::can::bx::Reg<u32, _FFA1R>;
194#[allow(missing_docs)] 194#[allow(missing_docs)]
195#[doc(hidden)] 195#[doc(hidden)]
196pub struct _FFA1R; 196pub struct _FFA1R;
197#[doc = "`read()` method returns [ffa1r::R](ffa1r::R) reader structure"] 197#[doc = "`read()` method returns [ffa1r::R](ffa1r::R) reader structure"]
198impl crate::Readable for FFA1R {} 198impl crate::can::bx::Readable for FFA1R {}
199#[doc = "`write(|w| ..)` method takes [ffa1r::W](ffa1r::W) writer structure"] 199#[doc = "`write(|w| ..)` method takes [ffa1r::W](ffa1r::W) writer structure"]
200impl crate::Writable for FFA1R {} 200impl crate::can::bx::Writable for FFA1R {}
201#[doc = "CAN_FFA1R"] 201#[doc = "CAN_FFA1R"]
202pub mod ffa1r; 202pub mod ffa1r;
203#[doc = "CAN_FA1R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fa1r](fa1r) module"] 203#[doc = "CAN_FA1R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fa1r](fa1r) module"]
204pub type FA1R = crate::Reg<u32, _FA1R>; 204pub type FA1R = crate::can::bx::Reg<u32, _FA1R>;
205#[allow(missing_docs)] 205#[allow(missing_docs)]
206#[doc(hidden)] 206#[doc(hidden)]
207pub struct _FA1R; 207pub struct _FA1R;
208#[doc = "`read()` method returns [fa1r::R](fa1r::R) reader structure"] 208#[doc = "`read()` method returns [fa1r::R](fa1r::R) reader structure"]
209impl crate::Readable for FA1R {} 209impl crate::can::bx::Readable for FA1R {}
210#[doc = "`write(|w| ..)` method takes [fa1r::W](fa1r::W) writer structure"] 210#[doc = "`write(|w| ..)` method takes [fa1r::W](fa1r::W) writer structure"]
211impl crate::Writable for FA1R {} 211impl crate::can::bx::Writable for FA1R {}
212#[doc = "CAN_FA1R"] 212#[doc = "CAN_FA1R"]
213pub mod fa1r; 213pub mod fa1r;
diff --git a/embassy-stm32/src/can/bx/pac/can/btr.rs b/embassy-stm32/src/can/bx/pac/can/btr.rs
index 0a801c50e..23ca298aa 100644
--- a/embassy-stm32/src/can/bx/pac/can/btr.rs
+++ b/embassy-stm32/src/can/bx/pac/can/btr.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register BTR"] 1#[doc = "Reader of register BTR"]
2pub type R = crate::R<u32, super::BTR>; 2pub type R = crate::can::bx::R<u32, super::BTR>;
3#[doc = "Writer for register BTR"] 3#[doc = "Writer for register BTR"]
4pub type W = crate::W<u32, super::BTR>; 4pub type W = crate::can::bx::W<u32, super::BTR>;
5#[doc = "Register BTR `reset()`'s with value 0"] 5#[doc = "Register BTR `reset()`'s with value 0"]
6impl crate::ResetValue for super::BTR { 6impl crate::can::bx::ResetValue for super::BTR {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -25,7 +25,7 @@ impl From<SILM_A> for bool {
25 } 25 }
26} 26}
27#[doc = "Reader of field `SILM`"] 27#[doc = "Reader of field `SILM`"]
28pub type SILM_R = crate::R<bool, SILM_A>; 28pub type SILM_R = crate::can::bx::R<bool, SILM_A>;
29impl SILM_R { 29impl SILM_R {
30 #[doc = r"Get enumerated values variant"] 30 #[doc = r"Get enumerated values variant"]
31 #[inline(always)] 31 #[inline(always)]
@@ -100,7 +100,7 @@ impl From<LBKM_A> for bool {
100 } 100 }
101} 101}
102#[doc = "Reader of field `LBKM`"] 102#[doc = "Reader of field `LBKM`"]
103pub type LBKM_R = crate::R<bool, LBKM_A>; 103pub type LBKM_R = crate::can::bx::R<bool, LBKM_A>;
104impl LBKM_R { 104impl LBKM_R {
105 #[doc = r"Get enumerated values variant"] 105 #[doc = r"Get enumerated values variant"]
106 #[inline(always)] 106 #[inline(always)]
@@ -161,7 +161,7 @@ impl<'a> LBKM_W<'a> {
161 } 161 }
162} 162}
163#[doc = "Reader of field `SJW`"] 163#[doc = "Reader of field `SJW`"]
164pub type SJW_R = crate::R<u8, u8>; 164pub type SJW_R = crate::can::bx::R<u8, u8>;
165#[doc = "Write proxy for field `SJW`"] 165#[doc = "Write proxy for field `SJW`"]
166pub struct SJW_W<'a> { 166pub struct SJW_W<'a> {
167 w: &'a mut W, 167 w: &'a mut W,
@@ -175,7 +175,7 @@ impl<'a> SJW_W<'a> {
175 } 175 }
176} 176}
177#[doc = "Reader of field `TS2`"] 177#[doc = "Reader of field `TS2`"]
178pub type TS2_R = crate::R<u8, u8>; 178pub type TS2_R = crate::can::bx::R<u8, u8>;
179#[doc = "Write proxy for field `TS2`"] 179#[doc = "Write proxy for field `TS2`"]
180pub struct TS2_W<'a> { 180pub struct TS2_W<'a> {
181 w: &'a mut W, 181 w: &'a mut W,
@@ -189,7 +189,7 @@ impl<'a> TS2_W<'a> {
189 } 189 }
190} 190}
191#[doc = "Reader of field `TS1`"] 191#[doc = "Reader of field `TS1`"]
192pub type TS1_R = crate::R<u8, u8>; 192pub type TS1_R = crate::can::bx::R<u8, u8>;
193#[doc = "Write proxy for field `TS1`"] 193#[doc = "Write proxy for field `TS1`"]
194pub struct TS1_W<'a> { 194pub struct TS1_W<'a> {
195 w: &'a mut W, 195 w: &'a mut W,
@@ -203,7 +203,7 @@ impl<'a> TS1_W<'a> {
203 } 203 }
204} 204}
205#[doc = "Reader of field `BRP`"] 205#[doc = "Reader of field `BRP`"]
206pub type BRP_R = crate::R<u16, u16>; 206pub type BRP_R = crate::can::bx::R<u16, u16>;
207#[doc = "Write proxy for field `BRP`"] 207#[doc = "Write proxy for field `BRP`"]
208pub struct BRP_W<'a> { 208pub struct BRP_W<'a> {
209 w: &'a mut W, 209 w: &'a mut W,
diff --git a/embassy-stm32/src/can/bx/pac/can/esr.rs b/embassy-stm32/src/can/bx/pac/can/esr.rs
index 9ea7c5a24..ddc414239 100644
--- a/embassy-stm32/src/can/bx/pac/can/esr.rs
+++ b/embassy-stm32/src/can/bx/pac/can/esr.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register ESR"] 1#[doc = "Reader of register ESR"]
2pub type R = crate::R<u32, super::ESR>; 2pub type R = crate::can::bx::R<u32, super::ESR>;
3#[doc = "Writer for register ESR"] 3#[doc = "Writer for register ESR"]
4pub type W = crate::W<u32, super::ESR>; 4pub type W = crate::can::bx::W<u32, super::ESR>;
5#[doc = "Register ESR `reset()`'s with value 0"] 5#[doc = "Register ESR `reset()`'s with value 0"]
6impl crate::ResetValue for super::ESR { 6impl crate::can::bx::ResetValue for super::ESR {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -11,9 +11,9 @@ impl crate::ResetValue for super::ESR {
11 } 11 }
12} 12}
13#[doc = "Reader of field `REC`"] 13#[doc = "Reader of field `REC`"]
14pub type REC_R = crate::R<u8, u8>; 14pub type REC_R = crate::can::bx::R<u8, u8>;
15#[doc = "Reader of field `TEC`"] 15#[doc = "Reader of field `TEC`"]
16pub type TEC_R = crate::R<u8, u8>; 16pub type TEC_R = crate::can::bx::R<u8, u8>;
17#[doc = "LEC\n\nValue on reset: 0"] 17#[doc = "LEC\n\nValue on reset: 0"]
18#[derive(Clone, Copy, Debug, PartialEq)] 18#[derive(Clone, Copy, Debug, PartialEq)]
19#[repr(u8)] 19#[repr(u8)]
@@ -42,7 +42,7 @@ impl From<LEC_A> for u8 {
42 } 42 }
43} 43}
44#[doc = "Reader of field `LEC`"] 44#[doc = "Reader of field `LEC`"]
45pub type LEC_R = crate::R<u8, LEC_A>; 45pub type LEC_R = crate::can::bx::R<u8, LEC_A>;
46impl LEC_R { 46impl LEC_R {
47 #[doc = r"Get enumerated values variant"] 47 #[doc = r"Get enumerated values variant"]
48 #[inline(always)] 48 #[inline(always)]
@@ -160,11 +160,11 @@ impl<'a> LEC_W<'a> {
160 } 160 }
161} 161}
162#[doc = "Reader of field `BOFF`"] 162#[doc = "Reader of field `BOFF`"]
163pub type BOFF_R = crate::R<bool, bool>; 163pub type BOFF_R = crate::can::bx::R<bool, bool>;
164#[doc = "Reader of field `EPVF`"] 164#[doc = "Reader of field `EPVF`"]
165pub type EPVF_R = crate::R<bool, bool>; 165pub type EPVF_R = crate::can::bx::R<bool, bool>;
166#[doc = "Reader of field `EWGF`"] 166#[doc = "Reader of field `EWGF`"]
167pub type EWGF_R = crate::R<bool, bool>; 167pub type EWGF_R = crate::can::bx::R<bool, bool>;
168impl R { 168impl R {
169 #[doc = "Bits 24:31 - REC"] 169 #[doc = "Bits 24:31 - REC"]
170 #[inline(always)] 170 #[inline(always)]
diff --git a/embassy-stm32/src/can/bx/pac/can/fa1r.rs b/embassy-stm32/src/can/bx/pac/can/fa1r.rs
index 797e4e074..e7b2b365d 100644
--- a/embassy-stm32/src/can/bx/pac/can/fa1r.rs
+++ b/embassy-stm32/src/can/bx/pac/can/fa1r.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register FA1R"] 1#[doc = "Reader of register FA1R"]
2pub type R = crate::R<u32, super::FA1R>; 2pub type R = crate::can::bx::R<u32, super::FA1R>;
3#[doc = "Writer for register FA1R"] 3#[doc = "Writer for register FA1R"]
4pub type W = crate::W<u32, super::FA1R>; 4pub type W = crate::can::bx::W<u32, super::FA1R>;
5#[doc = "Register FA1R `reset()`'s with value 0"] 5#[doc = "Register FA1R `reset()`'s with value 0"]
6impl crate::ResetValue for super::FA1R { 6impl crate::can::bx::ResetValue for super::FA1R {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -11,7 +11,7 @@ impl crate::ResetValue for super::FA1R {
11 } 11 }
12} 12}
13#[doc = "Reader of field `FACT0`"] 13#[doc = "Reader of field `FACT0`"]
14pub type FACT0_R = crate::R<bool, bool>; 14pub type FACT0_R = crate::can::bx::R<bool, bool>;
15#[doc = "Write proxy for field `FACT0`"] 15#[doc = "Write proxy for field `FACT0`"]
16pub struct FACT0_W<'a> { 16pub struct FACT0_W<'a> {
17 w: &'a mut W, 17 w: &'a mut W,
@@ -35,7 +35,7 @@ impl<'a> FACT0_W<'a> {
35 } 35 }
36} 36}
37#[doc = "Reader of field `FACT1`"] 37#[doc = "Reader of field `FACT1`"]
38pub type FACT1_R = crate::R<bool, bool>; 38pub type FACT1_R = crate::can::bx::R<bool, bool>;
39#[doc = "Write proxy for field `FACT1`"] 39#[doc = "Write proxy for field `FACT1`"]
40pub struct FACT1_W<'a> { 40pub struct FACT1_W<'a> {
41 w: &'a mut W, 41 w: &'a mut W,
@@ -59,7 +59,7 @@ impl<'a> FACT1_W<'a> {
59 } 59 }
60} 60}
61#[doc = "Reader of field `FACT2`"] 61#[doc = "Reader of field `FACT2`"]
62pub type FACT2_R = crate::R<bool, bool>; 62pub type FACT2_R = crate::can::bx::R<bool, bool>;
63#[doc = "Write proxy for field `FACT2`"] 63#[doc = "Write proxy for field `FACT2`"]
64pub struct FACT2_W<'a> { 64pub struct FACT2_W<'a> {
65 w: &'a mut W, 65 w: &'a mut W,
@@ -83,7 +83,7 @@ impl<'a> FACT2_W<'a> {
83 } 83 }
84} 84}
85#[doc = "Reader of field `FACT3`"] 85#[doc = "Reader of field `FACT3`"]
86pub type FACT3_R = crate::R<bool, bool>; 86pub type FACT3_R = crate::can::bx::R<bool, bool>;
87#[doc = "Write proxy for field `FACT3`"] 87#[doc = "Write proxy for field `FACT3`"]
88pub struct FACT3_W<'a> { 88pub struct FACT3_W<'a> {
89 w: &'a mut W, 89 w: &'a mut W,
@@ -107,7 +107,7 @@ impl<'a> FACT3_W<'a> {
107 } 107 }
108} 108}
109#[doc = "Reader of field `FACT4`"] 109#[doc = "Reader of field `FACT4`"]
110pub type FACT4_R = crate::R<bool, bool>; 110pub type FACT4_R = crate::can::bx::R<bool, bool>;
111#[doc = "Write proxy for field `FACT4`"] 111#[doc = "Write proxy for field `FACT4`"]
112pub struct FACT4_W<'a> { 112pub struct FACT4_W<'a> {
113 w: &'a mut W, 113 w: &'a mut W,
@@ -131,7 +131,7 @@ impl<'a> FACT4_W<'a> {
131 } 131 }
132} 132}
133#[doc = "Reader of field `FACT5`"] 133#[doc = "Reader of field `FACT5`"]
134pub type FACT5_R = crate::R<bool, bool>; 134pub type FACT5_R = crate::can::bx::R<bool, bool>;
135#[doc = "Write proxy for field `FACT5`"] 135#[doc = "Write proxy for field `FACT5`"]
136pub struct FACT5_W<'a> { 136pub struct FACT5_W<'a> {
137 w: &'a mut W, 137 w: &'a mut W,
@@ -155,7 +155,7 @@ impl<'a> FACT5_W<'a> {
155 } 155 }
156} 156}
157#[doc = "Reader of field `FACT6`"] 157#[doc = "Reader of field `FACT6`"]
158pub type FACT6_R = crate::R<bool, bool>; 158pub type FACT6_R = crate::can::bx::R<bool, bool>;
159#[doc = "Write proxy for field `FACT6`"] 159#[doc = "Write proxy for field `FACT6`"]
160pub struct FACT6_W<'a> { 160pub struct FACT6_W<'a> {
161 w: &'a mut W, 161 w: &'a mut W,
@@ -179,7 +179,7 @@ impl<'a> FACT6_W<'a> {
179 } 179 }
180} 180}
181#[doc = "Reader of field `FACT7`"] 181#[doc = "Reader of field `FACT7`"]
182pub type FACT7_R = crate::R<bool, bool>; 182pub type FACT7_R = crate::can::bx::R<bool, bool>;
183#[doc = "Write proxy for field `FACT7`"] 183#[doc = "Write proxy for field `FACT7`"]
184pub struct FACT7_W<'a> { 184pub struct FACT7_W<'a> {
185 w: &'a mut W, 185 w: &'a mut W,
@@ -203,7 +203,7 @@ impl<'a> FACT7_W<'a> {
203 } 203 }
204} 204}
205#[doc = "Reader of field `FACT8`"] 205#[doc = "Reader of field `FACT8`"]
206pub type FACT8_R = crate::R<bool, bool>; 206pub type FACT8_R = crate::can::bx::R<bool, bool>;
207#[doc = "Write proxy for field `FACT8`"] 207#[doc = "Write proxy for field `FACT8`"]
208pub struct FACT8_W<'a> { 208pub struct FACT8_W<'a> {
209 w: &'a mut W, 209 w: &'a mut W,
@@ -227,7 +227,7 @@ impl<'a> FACT8_W<'a> {
227 } 227 }
228} 228}
229#[doc = "Reader of field `FACT9`"] 229#[doc = "Reader of field `FACT9`"]
230pub type FACT9_R = crate::R<bool, bool>; 230pub type FACT9_R = crate::can::bx::R<bool, bool>;
231#[doc = "Write proxy for field `FACT9`"] 231#[doc = "Write proxy for field `FACT9`"]
232pub struct FACT9_W<'a> { 232pub struct FACT9_W<'a> {
233 w: &'a mut W, 233 w: &'a mut W,
@@ -251,7 +251,7 @@ impl<'a> FACT9_W<'a> {
251 } 251 }
252} 252}
253#[doc = "Reader of field `FACT10`"] 253#[doc = "Reader of field `FACT10`"]
254pub type FACT10_R = crate::R<bool, bool>; 254pub type FACT10_R = crate::can::bx::R<bool, bool>;
255#[doc = "Write proxy for field `FACT10`"] 255#[doc = "Write proxy for field `FACT10`"]
256pub struct FACT10_W<'a> { 256pub struct FACT10_W<'a> {
257 w: &'a mut W, 257 w: &'a mut W,
@@ -275,7 +275,7 @@ impl<'a> FACT10_W<'a> {
275 } 275 }
276} 276}
277#[doc = "Reader of field `FACT11`"] 277#[doc = "Reader of field `FACT11`"]
278pub type FACT11_R = crate::R<bool, bool>; 278pub type FACT11_R = crate::can::bx::R<bool, bool>;
279#[doc = "Write proxy for field `FACT11`"] 279#[doc = "Write proxy for field `FACT11`"]
280pub struct FACT11_W<'a> { 280pub struct FACT11_W<'a> {
281 w: &'a mut W, 281 w: &'a mut W,
@@ -299,7 +299,7 @@ impl<'a> FACT11_W<'a> {
299 } 299 }
300} 300}
301#[doc = "Reader of field `FACT12`"] 301#[doc = "Reader of field `FACT12`"]
302pub type FACT12_R = crate::R<bool, bool>; 302pub type FACT12_R = crate::can::bx::R<bool, bool>;
303#[doc = "Write proxy for field `FACT12`"] 303#[doc = "Write proxy for field `FACT12`"]
304pub struct FACT12_W<'a> { 304pub struct FACT12_W<'a> {
305 w: &'a mut W, 305 w: &'a mut W,
@@ -323,7 +323,7 @@ impl<'a> FACT12_W<'a> {
323 } 323 }
324} 324}
325#[doc = "Reader of field `FACT13`"] 325#[doc = "Reader of field `FACT13`"]
326pub type FACT13_R = crate::R<bool, bool>; 326pub type FACT13_R = crate::can::bx::R<bool, bool>;
327#[doc = "Write proxy for field `FACT13`"] 327#[doc = "Write proxy for field `FACT13`"]
328pub struct FACT13_W<'a> { 328pub struct FACT13_W<'a> {
329 w: &'a mut W, 329 w: &'a mut W,
diff --git a/embassy-stm32/src/can/bx/pac/can/fb.rs b/embassy-stm32/src/can/bx/pac/can/fb.rs
index 1b31e37c5..527235b29 100644
--- a/embassy-stm32/src/can/bx/pac/can/fb.rs
+++ b/embassy-stm32/src/can/bx/pac/can/fb.rs
@@ -1,22 +1,22 @@
1#[doc = "Filter bank 0 register 1\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fr1](fr1) module"] 1#[doc = "Filter bank 0 register 1\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fr1](fr1) module"]
2pub type FR1 = crate::Reg<u32, _FR1>; 2pub type FR1 = crate::can::bx::Reg<u32, _FR1>;
3#[allow(missing_docs)] 3#[allow(missing_docs)]
4#[doc(hidden)] 4#[doc(hidden)]
5pub struct _FR1; 5pub struct _FR1;
6#[doc = "`read()` method returns [fr1::R](fr1::R) reader structure"] 6#[doc = "`read()` method returns [fr1::R](fr1::R) reader structure"]
7impl crate::Readable for FR1 {} 7impl crate::can::bx::Readable for FR1 {}
8#[doc = "`write(|w| ..)` method takes [fr1::W](fr1::W) writer structure"] 8#[doc = "`write(|w| ..)` method takes [fr1::W](fr1::W) writer structure"]
9impl crate::Writable for FR1 {} 9impl crate::can::bx::Writable for FR1 {}
10#[doc = "Filter bank 0 register 1"] 10#[doc = "Filter bank 0 register 1"]
11pub mod fr1; 11pub mod fr1;
12#[doc = "Filter bank 0 register 2\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fr2](fr2) module"] 12#[doc = "Filter bank 0 register 2\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fr2](fr2) module"]
13pub type FR2 = crate::Reg<u32, _FR2>; 13pub type FR2 = crate::can::bx::Reg<u32, _FR2>;
14#[allow(missing_docs)] 14#[allow(missing_docs)]
15#[doc(hidden)] 15#[doc(hidden)]
16pub struct _FR2; 16pub struct _FR2;
17#[doc = "`read()` method returns [fr2::R](fr2::R) reader structure"] 17#[doc = "`read()` method returns [fr2::R](fr2::R) reader structure"]
18impl crate::Readable for FR2 {} 18impl crate::can::bx::Readable for FR2 {}
19#[doc = "`write(|w| ..)` method takes [fr2::W](fr2::W) writer structure"] 19#[doc = "`write(|w| ..)` method takes [fr2::W](fr2::W) writer structure"]
20impl crate::Writable for FR2 {} 20impl crate::can::bx::Writable for FR2 {}
21#[doc = "Filter bank 0 register 2"] 21#[doc = "Filter bank 0 register 2"]
22pub mod fr2; 22pub mod fr2;
diff --git a/embassy-stm32/src/can/bx/pac/can/fb/fr1.rs b/embassy-stm32/src/can/bx/pac/can/fb/fr1.rs
index b39d5e8fb..6a80bd308 100644
--- a/embassy-stm32/src/can/bx/pac/can/fb/fr1.rs
+++ b/embassy-stm32/src/can/bx/pac/can/fb/fr1.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register FR1"] 1#[doc = "Reader of register FR1"]
2pub type R = crate::R<u32, super::FR1>; 2pub type R = crate::can::bx::R<u32, super::FR1>;
3#[doc = "Writer for register FR1"] 3#[doc = "Writer for register FR1"]
4pub type W = crate::W<u32, super::FR1>; 4pub type W = crate::can::bx::W<u32, super::FR1>;
5#[doc = "Register FR1 `reset()`'s with value 0"] 5#[doc = "Register FR1 `reset()`'s with value 0"]
6impl crate::ResetValue for super::FR1 { 6impl crate::can::bx::ResetValue for super::FR1 {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -11,7 +11,7 @@ impl crate::ResetValue for super::FR1 {
11 } 11 }
12} 12}
13#[doc = "Reader of field `FB`"] 13#[doc = "Reader of field `FB`"]
14pub type FB_R = crate::R<u32, u32>; 14pub type FB_R = crate::can::bx::R<u32, u32>;
15#[doc = "Write proxy for field `FB`"] 15#[doc = "Write proxy for field `FB`"]
16pub struct FB_W<'a> { 16pub struct FB_W<'a> {
17 w: &'a mut W, 17 w: &'a mut W,
diff --git a/embassy-stm32/src/can/bx/pac/can/fb/fr2.rs b/embassy-stm32/src/can/bx/pac/can/fb/fr2.rs
index 1f318894e..097387b9f 100644
--- a/embassy-stm32/src/can/bx/pac/can/fb/fr2.rs
+++ b/embassy-stm32/src/can/bx/pac/can/fb/fr2.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register FR2"] 1#[doc = "Reader of register FR2"]
2pub type R = crate::R<u32, super::FR2>; 2pub type R = crate::can::bx::R<u32, super::FR2>;
3#[doc = "Writer for register FR2"] 3#[doc = "Writer for register FR2"]
4pub type W = crate::W<u32, super::FR2>; 4pub type W = crate::can::bx::W<u32, super::FR2>;
5#[doc = "Register FR2 `reset()`'s with value 0"] 5#[doc = "Register FR2 `reset()`'s with value 0"]
6impl crate::ResetValue for super::FR2 { 6impl crate::can::bx::ResetValue for super::FR2 {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -11,7 +11,7 @@ impl crate::ResetValue for super::FR2 {
11 } 11 }
12} 12}
13#[doc = "Reader of field `FB`"] 13#[doc = "Reader of field `FB`"]
14pub type FB_R = crate::R<u32, u32>; 14pub type FB_R = crate::can::bx::R<u32, u32>;
15#[doc = "Write proxy for field `FB`"] 15#[doc = "Write proxy for field `FB`"]
16pub struct FB_W<'a> { 16pub struct FB_W<'a> {
17 w: &'a mut W, 17 w: &'a mut W,
diff --git a/embassy-stm32/src/can/bx/pac/can/ffa1r.rs b/embassy-stm32/src/can/bx/pac/can/ffa1r.rs
index bc3ab0eb9..cf5e04c78 100644
--- a/embassy-stm32/src/can/bx/pac/can/ffa1r.rs
+++ b/embassy-stm32/src/can/bx/pac/can/ffa1r.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register FFA1R"] 1#[doc = "Reader of register FFA1R"]
2pub type R = crate::R<u32, super::FFA1R>; 2pub type R = crate::can::bx::R<u32, super::FFA1R>;
3#[doc = "Writer for register FFA1R"] 3#[doc = "Writer for register FFA1R"]
4pub type W = crate::W<u32, super::FFA1R>; 4pub type W = crate::can::bx::W<u32, super::FFA1R>;
5#[doc = "Register FFA1R `reset()`'s with value 0"] 5#[doc = "Register FFA1R `reset()`'s with value 0"]
6impl crate::ResetValue for super::FFA1R { 6impl crate::can::bx::ResetValue for super::FFA1R {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -11,7 +11,7 @@ impl crate::ResetValue for super::FFA1R {
11 } 11 }
12} 12}
13#[doc = "Reader of field `FFA0`"] 13#[doc = "Reader of field `FFA0`"]
14pub type FFA0_R = crate::R<bool, bool>; 14pub type FFA0_R = crate::can::bx::R<bool, bool>;
15#[doc = "Write proxy for field `FFA0`"] 15#[doc = "Write proxy for field `FFA0`"]
16pub struct FFA0_W<'a> { 16pub struct FFA0_W<'a> {
17 w: &'a mut W, 17 w: &'a mut W,
@@ -35,7 +35,7 @@ impl<'a> FFA0_W<'a> {
35 } 35 }
36} 36}
37#[doc = "Reader of field `FFA1`"] 37#[doc = "Reader of field `FFA1`"]
38pub type FFA1_R = crate::R<bool, bool>; 38pub type FFA1_R = crate::can::bx::R<bool, bool>;
39#[doc = "Write proxy for field `FFA1`"] 39#[doc = "Write proxy for field `FFA1`"]
40pub struct FFA1_W<'a> { 40pub struct FFA1_W<'a> {
41 w: &'a mut W, 41 w: &'a mut W,
@@ -59,7 +59,7 @@ impl<'a> FFA1_W<'a> {
59 } 59 }
60} 60}
61#[doc = "Reader of field `FFA2`"] 61#[doc = "Reader of field `FFA2`"]
62pub type FFA2_R = crate::R<bool, bool>; 62pub type FFA2_R = crate::can::bx::R<bool, bool>;
63#[doc = "Write proxy for field `FFA2`"] 63#[doc = "Write proxy for field `FFA2`"]
64pub struct FFA2_W<'a> { 64pub struct FFA2_W<'a> {
65 w: &'a mut W, 65 w: &'a mut W,
@@ -83,7 +83,7 @@ impl<'a> FFA2_W<'a> {
83 } 83 }
84} 84}
85#[doc = "Reader of field `FFA3`"] 85#[doc = "Reader of field `FFA3`"]
86pub type FFA3_R = crate::R<bool, bool>; 86pub type FFA3_R = crate::can::bx::R<bool, bool>;
87#[doc = "Write proxy for field `FFA3`"] 87#[doc = "Write proxy for field `FFA3`"]
88pub struct FFA3_W<'a> { 88pub struct FFA3_W<'a> {
89 w: &'a mut W, 89 w: &'a mut W,
@@ -107,7 +107,7 @@ impl<'a> FFA3_W<'a> {
107 } 107 }
108} 108}
109#[doc = "Reader of field `FFA4`"] 109#[doc = "Reader of field `FFA4`"]
110pub type FFA4_R = crate::R<bool, bool>; 110pub type FFA4_R = crate::can::bx::R<bool, bool>;
111#[doc = "Write proxy for field `FFA4`"] 111#[doc = "Write proxy for field `FFA4`"]
112pub struct FFA4_W<'a> { 112pub struct FFA4_W<'a> {
113 w: &'a mut W, 113 w: &'a mut W,
@@ -131,7 +131,7 @@ impl<'a> FFA4_W<'a> {
131 } 131 }
132} 132}
133#[doc = "Reader of field `FFA5`"] 133#[doc = "Reader of field `FFA5`"]
134pub type FFA5_R = crate::R<bool, bool>; 134pub type FFA5_R = crate::can::bx::R<bool, bool>;
135#[doc = "Write proxy for field `FFA5`"] 135#[doc = "Write proxy for field `FFA5`"]
136pub struct FFA5_W<'a> { 136pub struct FFA5_W<'a> {
137 w: &'a mut W, 137 w: &'a mut W,
@@ -155,7 +155,7 @@ impl<'a> FFA5_W<'a> {
155 } 155 }
156} 156}
157#[doc = "Reader of field `FFA6`"] 157#[doc = "Reader of field `FFA6`"]
158pub type FFA6_R = crate::R<bool, bool>; 158pub type FFA6_R = crate::can::bx::R<bool, bool>;
159#[doc = "Write proxy for field `FFA6`"] 159#[doc = "Write proxy for field `FFA6`"]
160pub struct FFA6_W<'a> { 160pub struct FFA6_W<'a> {
161 w: &'a mut W, 161 w: &'a mut W,
@@ -179,7 +179,7 @@ impl<'a> FFA6_W<'a> {
179 } 179 }
180} 180}
181#[doc = "Reader of field `FFA7`"] 181#[doc = "Reader of field `FFA7`"]
182pub type FFA7_R = crate::R<bool, bool>; 182pub type FFA7_R = crate::can::bx::R<bool, bool>;
183#[doc = "Write proxy for field `FFA7`"] 183#[doc = "Write proxy for field `FFA7`"]
184pub struct FFA7_W<'a> { 184pub struct FFA7_W<'a> {
185 w: &'a mut W, 185 w: &'a mut W,
@@ -203,7 +203,7 @@ impl<'a> FFA7_W<'a> {
203 } 203 }
204} 204}
205#[doc = "Reader of field `FFA8`"] 205#[doc = "Reader of field `FFA8`"]
206pub type FFA8_R = crate::R<bool, bool>; 206pub type FFA8_R = crate::can::bx::R<bool, bool>;
207#[doc = "Write proxy for field `FFA8`"] 207#[doc = "Write proxy for field `FFA8`"]
208pub struct FFA8_W<'a> { 208pub struct FFA8_W<'a> {
209 w: &'a mut W, 209 w: &'a mut W,
@@ -227,7 +227,7 @@ impl<'a> FFA8_W<'a> {
227 } 227 }
228} 228}
229#[doc = "Reader of field `FFA9`"] 229#[doc = "Reader of field `FFA9`"]
230pub type FFA9_R = crate::R<bool, bool>; 230pub type FFA9_R = crate::can::bx::R<bool, bool>;
231#[doc = "Write proxy for field `FFA9`"] 231#[doc = "Write proxy for field `FFA9`"]
232pub struct FFA9_W<'a> { 232pub struct FFA9_W<'a> {
233 w: &'a mut W, 233 w: &'a mut W,
@@ -251,7 +251,7 @@ impl<'a> FFA9_W<'a> {
251 } 251 }
252} 252}
253#[doc = "Reader of field `FFA10`"] 253#[doc = "Reader of field `FFA10`"]
254pub type FFA10_R = crate::R<bool, bool>; 254pub type FFA10_R = crate::can::bx::R<bool, bool>;
255#[doc = "Write proxy for field `FFA10`"] 255#[doc = "Write proxy for field `FFA10`"]
256pub struct FFA10_W<'a> { 256pub struct FFA10_W<'a> {
257 w: &'a mut W, 257 w: &'a mut W,
@@ -275,7 +275,7 @@ impl<'a> FFA10_W<'a> {
275 } 275 }
276} 276}
277#[doc = "Reader of field `FFA11`"] 277#[doc = "Reader of field `FFA11`"]
278pub type FFA11_R = crate::R<bool, bool>; 278pub type FFA11_R = crate::can::bx::R<bool, bool>;
279#[doc = "Write proxy for field `FFA11`"] 279#[doc = "Write proxy for field `FFA11`"]
280pub struct FFA11_W<'a> { 280pub struct FFA11_W<'a> {
281 w: &'a mut W, 281 w: &'a mut W,
@@ -299,7 +299,7 @@ impl<'a> FFA11_W<'a> {
299 } 299 }
300} 300}
301#[doc = "Reader of field `FFA12`"] 301#[doc = "Reader of field `FFA12`"]
302pub type FFA12_R = crate::R<bool, bool>; 302pub type FFA12_R = crate::can::bx::R<bool, bool>;
303#[doc = "Write proxy for field `FFA12`"] 303#[doc = "Write proxy for field `FFA12`"]
304pub struct FFA12_W<'a> { 304pub struct FFA12_W<'a> {
305 w: &'a mut W, 305 w: &'a mut W,
@@ -323,7 +323,7 @@ impl<'a> FFA12_W<'a> {
323 } 323 }
324} 324}
325#[doc = "Reader of field `FFA13`"] 325#[doc = "Reader of field `FFA13`"]
326pub type FFA13_R = crate::R<bool, bool>; 326pub type FFA13_R = crate::can::bx::R<bool, bool>;
327#[doc = "Write proxy for field `FFA13`"] 327#[doc = "Write proxy for field `FFA13`"]
328pub struct FFA13_W<'a> { 328pub struct FFA13_W<'a> {
329 w: &'a mut W, 329 w: &'a mut W,
diff --git a/embassy-stm32/src/can/bx/pac/can/fm1r.rs b/embassy-stm32/src/can/bx/pac/can/fm1r.rs
index e0a8dc648..828f1914e 100644
--- a/embassy-stm32/src/can/bx/pac/can/fm1r.rs
+++ b/embassy-stm32/src/can/bx/pac/can/fm1r.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register FM1R"] 1#[doc = "Reader of register FM1R"]
2pub type R = crate::R<u32, super::FM1R>; 2pub type R = crate::can::bx::R<u32, super::FM1R>;
3#[doc = "Writer for register FM1R"] 3#[doc = "Writer for register FM1R"]
4pub type W = crate::W<u32, super::FM1R>; 4pub type W = crate::can::bx::W<u32, super::FM1R>;
5#[doc = "Register FM1R `reset()`'s with value 0"] 5#[doc = "Register FM1R `reset()`'s with value 0"]
6impl crate::ResetValue for super::FM1R { 6impl crate::can::bx::ResetValue for super::FM1R {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -11,7 +11,7 @@ impl crate::ResetValue for super::FM1R {
11 } 11 }
12} 12}
13#[doc = "Reader of field `FBM0`"] 13#[doc = "Reader of field `FBM0`"]
14pub type FBM0_R = crate::R<bool, bool>; 14pub type FBM0_R = crate::can::bx::R<bool, bool>;
15#[doc = "Write proxy for field `FBM0`"] 15#[doc = "Write proxy for field `FBM0`"]
16pub struct FBM0_W<'a> { 16pub struct FBM0_W<'a> {
17 w: &'a mut W, 17 w: &'a mut W,
@@ -35,7 +35,7 @@ impl<'a> FBM0_W<'a> {
35 } 35 }
36} 36}
37#[doc = "Reader of field `FBM1`"] 37#[doc = "Reader of field `FBM1`"]
38pub type FBM1_R = crate::R<bool, bool>; 38pub type FBM1_R = crate::can::bx::R<bool, bool>;
39#[doc = "Write proxy for field `FBM1`"] 39#[doc = "Write proxy for field `FBM1`"]
40pub struct FBM1_W<'a> { 40pub struct FBM1_W<'a> {
41 w: &'a mut W, 41 w: &'a mut W,
@@ -59,7 +59,7 @@ impl<'a> FBM1_W<'a> {
59 } 59 }
60} 60}
61#[doc = "Reader of field `FBM2`"] 61#[doc = "Reader of field `FBM2`"]
62pub type FBM2_R = crate::R<bool, bool>; 62pub type FBM2_R = crate::can::bx::R<bool, bool>;
63#[doc = "Write proxy for field `FBM2`"] 63#[doc = "Write proxy for field `FBM2`"]
64pub struct FBM2_W<'a> { 64pub struct FBM2_W<'a> {
65 w: &'a mut W, 65 w: &'a mut W,
@@ -83,7 +83,7 @@ impl<'a> FBM2_W<'a> {
83 } 83 }
84} 84}
85#[doc = "Reader of field `FBM3`"] 85#[doc = "Reader of field `FBM3`"]
86pub type FBM3_R = crate::R<bool, bool>; 86pub type FBM3_R = crate::can::bx::R<bool, bool>;
87#[doc = "Write proxy for field `FBM3`"] 87#[doc = "Write proxy for field `FBM3`"]
88pub struct FBM3_W<'a> { 88pub struct FBM3_W<'a> {
89 w: &'a mut W, 89 w: &'a mut W,
@@ -107,7 +107,7 @@ impl<'a> FBM3_W<'a> {
107 } 107 }
108} 108}
109#[doc = "Reader of field `FBM4`"] 109#[doc = "Reader of field `FBM4`"]
110pub type FBM4_R = crate::R<bool, bool>; 110pub type FBM4_R = crate::can::bx::R<bool, bool>;
111#[doc = "Write proxy for field `FBM4`"] 111#[doc = "Write proxy for field `FBM4`"]
112pub struct FBM4_W<'a> { 112pub struct FBM4_W<'a> {
113 w: &'a mut W, 113 w: &'a mut W,
@@ -131,7 +131,7 @@ impl<'a> FBM4_W<'a> {
131 } 131 }
132} 132}
133#[doc = "Reader of field `FBM5`"] 133#[doc = "Reader of field `FBM5`"]
134pub type FBM5_R = crate::R<bool, bool>; 134pub type FBM5_R = crate::can::bx::R<bool, bool>;
135#[doc = "Write proxy for field `FBM5`"] 135#[doc = "Write proxy for field `FBM5`"]
136pub struct FBM5_W<'a> { 136pub struct FBM5_W<'a> {
137 w: &'a mut W, 137 w: &'a mut W,
@@ -155,7 +155,7 @@ impl<'a> FBM5_W<'a> {
155 } 155 }
156} 156}
157#[doc = "Reader of field `FBM6`"] 157#[doc = "Reader of field `FBM6`"]
158pub type FBM6_R = crate::R<bool, bool>; 158pub type FBM6_R = crate::can::bx::R<bool, bool>;
159#[doc = "Write proxy for field `FBM6`"] 159#[doc = "Write proxy for field `FBM6`"]
160pub struct FBM6_W<'a> { 160pub struct FBM6_W<'a> {
161 w: &'a mut W, 161 w: &'a mut W,
@@ -179,7 +179,7 @@ impl<'a> FBM6_W<'a> {
179 } 179 }
180} 180}
181#[doc = "Reader of field `FBM7`"] 181#[doc = "Reader of field `FBM7`"]
182pub type FBM7_R = crate::R<bool, bool>; 182pub type FBM7_R = crate::can::bx::R<bool, bool>;
183#[doc = "Write proxy for field `FBM7`"] 183#[doc = "Write proxy for field `FBM7`"]
184pub struct FBM7_W<'a> { 184pub struct FBM7_W<'a> {
185 w: &'a mut W, 185 w: &'a mut W,
@@ -203,7 +203,7 @@ impl<'a> FBM7_W<'a> {
203 } 203 }
204} 204}
205#[doc = "Reader of field `FBM8`"] 205#[doc = "Reader of field `FBM8`"]
206pub type FBM8_R = crate::R<bool, bool>; 206pub type FBM8_R = crate::can::bx::R<bool, bool>;
207#[doc = "Write proxy for field `FBM8`"] 207#[doc = "Write proxy for field `FBM8`"]
208pub struct FBM8_W<'a> { 208pub struct FBM8_W<'a> {
209 w: &'a mut W, 209 w: &'a mut W,
@@ -227,7 +227,7 @@ impl<'a> FBM8_W<'a> {
227 } 227 }
228} 228}
229#[doc = "Reader of field `FBM9`"] 229#[doc = "Reader of field `FBM9`"]
230pub type FBM9_R = crate::R<bool, bool>; 230pub type FBM9_R = crate::can::bx::R<bool, bool>;
231#[doc = "Write proxy for field `FBM9`"] 231#[doc = "Write proxy for field `FBM9`"]
232pub struct FBM9_W<'a> { 232pub struct FBM9_W<'a> {
233 w: &'a mut W, 233 w: &'a mut W,
@@ -251,7 +251,7 @@ impl<'a> FBM9_W<'a> {
251 } 251 }
252} 252}
253#[doc = "Reader of field `FBM10`"] 253#[doc = "Reader of field `FBM10`"]
254pub type FBM10_R = crate::R<bool, bool>; 254pub type FBM10_R = crate::can::bx::R<bool, bool>;
255#[doc = "Write proxy for field `FBM10`"] 255#[doc = "Write proxy for field `FBM10`"]
256pub struct FBM10_W<'a> { 256pub struct FBM10_W<'a> {
257 w: &'a mut W, 257 w: &'a mut W,
@@ -275,7 +275,7 @@ impl<'a> FBM10_W<'a> {
275 } 275 }
276} 276}
277#[doc = "Reader of field `FBM11`"] 277#[doc = "Reader of field `FBM11`"]
278pub type FBM11_R = crate::R<bool, bool>; 278pub type FBM11_R = crate::can::bx::R<bool, bool>;
279#[doc = "Write proxy for field `FBM11`"] 279#[doc = "Write proxy for field `FBM11`"]
280pub struct FBM11_W<'a> { 280pub struct FBM11_W<'a> {
281 w: &'a mut W, 281 w: &'a mut W,
@@ -299,7 +299,7 @@ impl<'a> FBM11_W<'a> {
299 } 299 }
300} 300}
301#[doc = "Reader of field `FBM12`"] 301#[doc = "Reader of field `FBM12`"]
302pub type FBM12_R = crate::R<bool, bool>; 302pub type FBM12_R = crate::can::bx::R<bool, bool>;
303#[doc = "Write proxy for field `FBM12`"] 303#[doc = "Write proxy for field `FBM12`"]
304pub struct FBM12_W<'a> { 304pub struct FBM12_W<'a> {
305 w: &'a mut W, 305 w: &'a mut W,
@@ -323,7 +323,7 @@ impl<'a> FBM12_W<'a> {
323 } 323 }
324} 324}
325#[doc = "Reader of field `FBM13`"] 325#[doc = "Reader of field `FBM13`"]
326pub type FBM13_R = crate::R<bool, bool>; 326pub type FBM13_R = crate::can::bx::R<bool, bool>;
327#[doc = "Write proxy for field `FBM13`"] 327#[doc = "Write proxy for field `FBM13`"]
328pub struct FBM13_W<'a> { 328pub struct FBM13_W<'a> {
329 w: &'a mut W, 329 w: &'a mut W,
diff --git a/embassy-stm32/src/can/bx/pac/can/fmr.rs b/embassy-stm32/src/can/bx/pac/can/fmr.rs
index 5701af452..5663ff3cd 100644
--- a/embassy-stm32/src/can/bx/pac/can/fmr.rs
+++ b/embassy-stm32/src/can/bx/pac/can/fmr.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register FMR"] 1#[doc = "Reader of register FMR"]
2pub type R = crate::R<u32, super::FMR>; 2pub type R = crate::can::bx::R<u32, super::FMR>;
3#[doc = "Writer for register FMR"] 3#[doc = "Writer for register FMR"]
4pub type W = crate::W<u32, super::FMR>; 4pub type W = crate::can::bx::W<u32, super::FMR>;
5#[doc = "Register FMR `reset()`'s with value 0"] 5#[doc = "Register FMR `reset()`'s with value 0"]
6impl crate::ResetValue for super::FMR { 6impl crate::can::bx::ResetValue for super::FMR {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -11,7 +11,7 @@ impl crate::ResetValue for super::FMR {
11 } 11 }
12} 12}
13#[doc = "Reader of field `CAN2SB`"] 13#[doc = "Reader of field `CAN2SB`"]
14pub type CAN2SB_R = crate::R<u8, u8>; 14pub type CAN2SB_R = crate::can::bx::R<u8, u8>;
15#[doc = "Write proxy for field `CAN2SB`"] 15#[doc = "Write proxy for field `CAN2SB`"]
16pub struct CAN2SB_W<'a> { 16pub struct CAN2SB_W<'a> {
17 w: &'a mut W, 17 w: &'a mut W,
@@ -25,7 +25,7 @@ impl<'a> CAN2SB_W<'a> {
25 } 25 }
26} 26}
27#[doc = "Reader of field `FINIT`"] 27#[doc = "Reader of field `FINIT`"]
28pub type FINIT_R = crate::R<bool, bool>; 28pub type FINIT_R = crate::can::bx::R<bool, bool>;
29#[doc = "Write proxy for field `FINIT`"] 29#[doc = "Write proxy for field `FINIT`"]
30pub struct FINIT_W<'a> { 30pub struct FINIT_W<'a> {
31 w: &'a mut W, 31 w: &'a mut W,
diff --git a/embassy-stm32/src/can/bx/pac/can/fs1r.rs b/embassy-stm32/src/can/bx/pac/can/fs1r.rs
index 7bff8197d..eea27887b 100644
--- a/embassy-stm32/src/can/bx/pac/can/fs1r.rs
+++ b/embassy-stm32/src/can/bx/pac/can/fs1r.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register FS1R"] 1#[doc = "Reader of register FS1R"]
2pub type R = crate::R<u32, super::FS1R>; 2pub type R = crate::can::bx::R<u32, super::FS1R>;
3#[doc = "Writer for register FS1R"] 3#[doc = "Writer for register FS1R"]
4pub type W = crate::W<u32, super::FS1R>; 4pub type W = crate::can::bx::W<u32, super::FS1R>;
5#[doc = "Register FS1R `reset()`'s with value 0"] 5#[doc = "Register FS1R `reset()`'s with value 0"]
6impl crate::ResetValue for super::FS1R { 6impl crate::can::bx::ResetValue for super::FS1R {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -11,7 +11,7 @@ impl crate::ResetValue for super::FS1R {
11 } 11 }
12} 12}
13#[doc = "Reader of field `FSC0`"] 13#[doc = "Reader of field `FSC0`"]
14pub type FSC0_R = crate::R<bool, bool>; 14pub type FSC0_R = crate::can::bx::R<bool, bool>;
15#[doc = "Write proxy for field `FSC0`"] 15#[doc = "Write proxy for field `FSC0`"]
16pub struct FSC0_W<'a> { 16pub struct FSC0_W<'a> {
17 w: &'a mut W, 17 w: &'a mut W,
@@ -35,7 +35,7 @@ impl<'a> FSC0_W<'a> {
35 } 35 }
36} 36}
37#[doc = "Reader of field `FSC1`"] 37#[doc = "Reader of field `FSC1`"]
38pub type FSC1_R = crate::R<bool, bool>; 38pub type FSC1_R = crate::can::bx::R<bool, bool>;
39#[doc = "Write proxy for field `FSC1`"] 39#[doc = "Write proxy for field `FSC1`"]
40pub struct FSC1_W<'a> { 40pub struct FSC1_W<'a> {
41 w: &'a mut W, 41 w: &'a mut W,
@@ -59,7 +59,7 @@ impl<'a> FSC1_W<'a> {
59 } 59 }
60} 60}
61#[doc = "Reader of field `FSC2`"] 61#[doc = "Reader of field `FSC2`"]
62pub type FSC2_R = crate::R<bool, bool>; 62pub type FSC2_R = crate::can::bx::R<bool, bool>;
63#[doc = "Write proxy for field `FSC2`"] 63#[doc = "Write proxy for field `FSC2`"]
64pub struct FSC2_W<'a> { 64pub struct FSC2_W<'a> {
65 w: &'a mut W, 65 w: &'a mut W,
@@ -83,7 +83,7 @@ impl<'a> FSC2_W<'a> {
83 } 83 }
84} 84}
85#[doc = "Reader of field `FSC3`"] 85#[doc = "Reader of field `FSC3`"]
86pub type FSC3_R = crate::R<bool, bool>; 86pub type FSC3_R = crate::can::bx::R<bool, bool>;
87#[doc = "Write proxy for field `FSC3`"] 87#[doc = "Write proxy for field `FSC3`"]
88pub struct FSC3_W<'a> { 88pub struct FSC3_W<'a> {
89 w: &'a mut W, 89 w: &'a mut W,
@@ -107,7 +107,7 @@ impl<'a> FSC3_W<'a> {
107 } 107 }
108} 108}
109#[doc = "Reader of field `FSC4`"] 109#[doc = "Reader of field `FSC4`"]
110pub type FSC4_R = crate::R<bool, bool>; 110pub type FSC4_R = crate::can::bx::R<bool, bool>;
111#[doc = "Write proxy for field `FSC4`"] 111#[doc = "Write proxy for field `FSC4`"]
112pub struct FSC4_W<'a> { 112pub struct FSC4_W<'a> {
113 w: &'a mut W, 113 w: &'a mut W,
@@ -131,7 +131,7 @@ impl<'a> FSC4_W<'a> {
131 } 131 }
132} 132}
133#[doc = "Reader of field `FSC5`"] 133#[doc = "Reader of field `FSC5`"]
134pub type FSC5_R = crate::R<bool, bool>; 134pub type FSC5_R = crate::can::bx::R<bool, bool>;
135#[doc = "Write proxy for field `FSC5`"] 135#[doc = "Write proxy for field `FSC5`"]
136pub struct FSC5_W<'a> { 136pub struct FSC5_W<'a> {
137 w: &'a mut W, 137 w: &'a mut W,
@@ -155,7 +155,7 @@ impl<'a> FSC5_W<'a> {
155 } 155 }
156} 156}
157#[doc = "Reader of field `FSC6`"] 157#[doc = "Reader of field `FSC6`"]
158pub type FSC6_R = crate::R<bool, bool>; 158pub type FSC6_R = crate::can::bx::R<bool, bool>;
159#[doc = "Write proxy for field `FSC6`"] 159#[doc = "Write proxy for field `FSC6`"]
160pub struct FSC6_W<'a> { 160pub struct FSC6_W<'a> {
161 w: &'a mut W, 161 w: &'a mut W,
@@ -179,7 +179,7 @@ impl<'a> FSC6_W<'a> {
179 } 179 }
180} 180}
181#[doc = "Reader of field `FSC7`"] 181#[doc = "Reader of field `FSC7`"]
182pub type FSC7_R = crate::R<bool, bool>; 182pub type FSC7_R = crate::can::bx::R<bool, bool>;
183#[doc = "Write proxy for field `FSC7`"] 183#[doc = "Write proxy for field `FSC7`"]
184pub struct FSC7_W<'a> { 184pub struct FSC7_W<'a> {
185 w: &'a mut W, 185 w: &'a mut W,
@@ -203,7 +203,7 @@ impl<'a> FSC7_W<'a> {
203 } 203 }
204} 204}
205#[doc = "Reader of field `FSC8`"] 205#[doc = "Reader of field `FSC8`"]
206pub type FSC8_R = crate::R<bool, bool>; 206pub type FSC8_R = crate::can::bx::R<bool, bool>;
207#[doc = "Write proxy for field `FSC8`"] 207#[doc = "Write proxy for field `FSC8`"]
208pub struct FSC8_W<'a> { 208pub struct FSC8_W<'a> {
209 w: &'a mut W, 209 w: &'a mut W,
@@ -227,7 +227,7 @@ impl<'a> FSC8_W<'a> {
227 } 227 }
228} 228}
229#[doc = "Reader of field `FSC9`"] 229#[doc = "Reader of field `FSC9`"]
230pub type FSC9_R = crate::R<bool, bool>; 230pub type FSC9_R = crate::can::bx::R<bool, bool>;
231#[doc = "Write proxy for field `FSC9`"] 231#[doc = "Write proxy for field `FSC9`"]
232pub struct FSC9_W<'a> { 232pub struct FSC9_W<'a> {
233 w: &'a mut W, 233 w: &'a mut W,
@@ -251,7 +251,7 @@ impl<'a> FSC9_W<'a> {
251 } 251 }
252} 252}
253#[doc = "Reader of field `FSC10`"] 253#[doc = "Reader of field `FSC10`"]
254pub type FSC10_R = crate::R<bool, bool>; 254pub type FSC10_R = crate::can::bx::R<bool, bool>;
255#[doc = "Write proxy for field `FSC10`"] 255#[doc = "Write proxy for field `FSC10`"]
256pub struct FSC10_W<'a> { 256pub struct FSC10_W<'a> {
257 w: &'a mut W, 257 w: &'a mut W,
@@ -275,7 +275,7 @@ impl<'a> FSC10_W<'a> {
275 } 275 }
276} 276}
277#[doc = "Reader of field `FSC11`"] 277#[doc = "Reader of field `FSC11`"]
278pub type FSC11_R = crate::R<bool, bool>; 278pub type FSC11_R = crate::can::bx::R<bool, bool>;
279#[doc = "Write proxy for field `FSC11`"] 279#[doc = "Write proxy for field `FSC11`"]
280pub struct FSC11_W<'a> { 280pub struct FSC11_W<'a> {
281 w: &'a mut W, 281 w: &'a mut W,
@@ -299,7 +299,7 @@ impl<'a> FSC11_W<'a> {
299 } 299 }
300} 300}
301#[doc = "Reader of field `FSC12`"] 301#[doc = "Reader of field `FSC12`"]
302pub type FSC12_R = crate::R<bool, bool>; 302pub type FSC12_R = crate::can::bx::R<bool, bool>;
303#[doc = "Write proxy for field `FSC12`"] 303#[doc = "Write proxy for field `FSC12`"]
304pub struct FSC12_W<'a> { 304pub struct FSC12_W<'a> {
305 w: &'a mut W, 305 w: &'a mut W,
@@ -323,7 +323,7 @@ impl<'a> FSC12_W<'a> {
323 } 323 }
324} 324}
325#[doc = "Reader of field `FSC13`"] 325#[doc = "Reader of field `FSC13`"]
326pub type FSC13_R = crate::R<bool, bool>; 326pub type FSC13_R = crate::can::bx::R<bool, bool>;
327#[doc = "Write proxy for field `FSC13`"] 327#[doc = "Write proxy for field `FSC13`"]
328pub struct FSC13_W<'a> { 328pub struct FSC13_W<'a> {
329 w: &'a mut W, 329 w: &'a mut W,
diff --git a/embassy-stm32/src/can/bx/pac/can/ier.rs b/embassy-stm32/src/can/bx/pac/can/ier.rs
index 3c57331b7..fa73254b7 100644
--- a/embassy-stm32/src/can/bx/pac/can/ier.rs
+++ b/embassy-stm32/src/can/bx/pac/can/ier.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register IER"] 1#[doc = "Reader of register IER"]
2pub type R = crate::R<u32, super::IER>; 2pub type R = crate::can::bx::R<u32, super::IER>;
3#[doc = "Writer for register IER"] 3#[doc = "Writer for register IER"]
4pub type W = crate::W<u32, super::IER>; 4pub type W = crate::can::bx::W<u32, super::IER>;
5#[doc = "Register IER `reset()`'s with value 0"] 5#[doc = "Register IER `reset()`'s with value 0"]
6impl crate::ResetValue for super::IER { 6impl crate::can::bx::ResetValue for super::IER {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -25,7 +25,7 @@ impl From<SLKIE_A> for bool {
25 } 25 }
26} 26}
27#[doc = "Reader of field `SLKIE`"] 27#[doc = "Reader of field `SLKIE`"]
28pub type SLKIE_R = crate::R<bool, SLKIE_A>; 28pub type SLKIE_R = crate::can::bx::R<bool, SLKIE_A>;
29impl SLKIE_R { 29impl SLKIE_R {
30 #[doc = r"Get enumerated values variant"] 30 #[doc = r"Get enumerated values variant"]
31 #[inline(always)] 31 #[inline(always)]
@@ -100,7 +100,7 @@ impl From<WKUIE_A> for bool {
100 } 100 }
101} 101}
102#[doc = "Reader of field `WKUIE`"] 102#[doc = "Reader of field `WKUIE`"]
103pub type WKUIE_R = crate::R<bool, WKUIE_A>; 103pub type WKUIE_R = crate::can::bx::R<bool, WKUIE_A>;
104impl WKUIE_R { 104impl WKUIE_R {
105 #[doc = r"Get enumerated values variant"] 105 #[doc = r"Get enumerated values variant"]
106 #[inline(always)] 106 #[inline(always)]
@@ -175,7 +175,7 @@ impl From<ERRIE_A> for bool {
175 } 175 }
176} 176}
177#[doc = "Reader of field `ERRIE`"] 177#[doc = "Reader of field `ERRIE`"]
178pub type ERRIE_R = crate::R<bool, ERRIE_A>; 178pub type ERRIE_R = crate::can::bx::R<bool, ERRIE_A>;
179impl ERRIE_R { 179impl ERRIE_R {
180 #[doc = r"Get enumerated values variant"] 180 #[doc = r"Get enumerated values variant"]
181 #[inline(always)] 181 #[inline(always)]
@@ -252,7 +252,7 @@ impl From<LECIE_A> for bool {
252 } 252 }
253} 253}
254#[doc = "Reader of field `LECIE`"] 254#[doc = "Reader of field `LECIE`"]
255pub type LECIE_R = crate::R<bool, LECIE_A>; 255pub type LECIE_R = crate::can::bx::R<bool, LECIE_A>;
256impl LECIE_R { 256impl LECIE_R {
257 #[doc = r"Get enumerated values variant"] 257 #[doc = r"Get enumerated values variant"]
258 #[inline(always)] 258 #[inline(always)]
@@ -329,7 +329,7 @@ impl From<BOFIE_A> for bool {
329 } 329 }
330} 330}
331#[doc = "Reader of field `BOFIE`"] 331#[doc = "Reader of field `BOFIE`"]
332pub type BOFIE_R = crate::R<bool, BOFIE_A>; 332pub type BOFIE_R = crate::can::bx::R<bool, BOFIE_A>;
333impl BOFIE_R { 333impl BOFIE_R {
334 #[doc = r"Get enumerated values variant"] 334 #[doc = r"Get enumerated values variant"]
335 #[inline(always)] 335 #[inline(always)]
@@ -404,7 +404,7 @@ impl From<EPVIE_A> for bool {
404 } 404 }
405} 405}
406#[doc = "Reader of field `EPVIE`"] 406#[doc = "Reader of field `EPVIE`"]
407pub type EPVIE_R = crate::R<bool, EPVIE_A>; 407pub type EPVIE_R = crate::can::bx::R<bool, EPVIE_A>;
408impl EPVIE_R { 408impl EPVIE_R {
409 #[doc = r"Get enumerated values variant"] 409 #[doc = r"Get enumerated values variant"]
410 #[inline(always)] 410 #[inline(always)]
@@ -479,7 +479,7 @@ impl From<EWGIE_A> for bool {
479 } 479 }
480} 480}
481#[doc = "Reader of field `EWGIE`"] 481#[doc = "Reader of field `EWGIE`"]
482pub type EWGIE_R = crate::R<bool, EWGIE_A>; 482pub type EWGIE_R = crate::can::bx::R<bool, EWGIE_A>;
483impl EWGIE_R { 483impl EWGIE_R {
484 #[doc = r"Get enumerated values variant"] 484 #[doc = r"Get enumerated values variant"]
485 #[inline(always)] 485 #[inline(always)]
@@ -554,7 +554,7 @@ impl From<FOVIE1_A> for bool {
554 } 554 }
555} 555}
556#[doc = "Reader of field `FOVIE1`"] 556#[doc = "Reader of field `FOVIE1`"]
557pub type FOVIE1_R = crate::R<bool, FOVIE1_A>; 557pub type FOVIE1_R = crate::can::bx::R<bool, FOVIE1_A>;
558impl FOVIE1_R { 558impl FOVIE1_R {
559 #[doc = r"Get enumerated values variant"] 559 #[doc = r"Get enumerated values variant"]
560 #[inline(always)] 560 #[inline(always)]
@@ -629,7 +629,7 @@ impl From<FFIE1_A> for bool {
629 } 629 }
630} 630}
631#[doc = "Reader of field `FFIE1`"] 631#[doc = "Reader of field `FFIE1`"]
632pub type FFIE1_R = crate::R<bool, FFIE1_A>; 632pub type FFIE1_R = crate::can::bx::R<bool, FFIE1_A>;
633impl FFIE1_R { 633impl FFIE1_R {
634 #[doc = r"Get enumerated values variant"] 634 #[doc = r"Get enumerated values variant"]
635 #[inline(always)] 635 #[inline(always)]
@@ -706,7 +706,7 @@ impl From<FMPIE1_A> for bool {
706 } 706 }
707} 707}
708#[doc = "Reader of field `FMPIE1`"] 708#[doc = "Reader of field `FMPIE1`"]
709pub type FMPIE1_R = crate::R<bool, FMPIE1_A>; 709pub type FMPIE1_R = crate::can::bx::R<bool, FMPIE1_A>;
710impl FMPIE1_R { 710impl FMPIE1_R {
711 #[doc = r"Get enumerated values variant"] 711 #[doc = r"Get enumerated values variant"]
712 #[inline(always)] 712 #[inline(always)]
@@ -783,7 +783,7 @@ impl From<FOVIE0_A> for bool {
783 } 783 }
784} 784}
785#[doc = "Reader of field `FOVIE0`"] 785#[doc = "Reader of field `FOVIE0`"]
786pub type FOVIE0_R = crate::R<bool, FOVIE0_A>; 786pub type FOVIE0_R = crate::can::bx::R<bool, FOVIE0_A>;
787impl FOVIE0_R { 787impl FOVIE0_R {
788 #[doc = r"Get enumerated values variant"] 788 #[doc = r"Get enumerated values variant"]
789 #[inline(always)] 789 #[inline(always)]
@@ -858,7 +858,7 @@ impl From<FFIE0_A> for bool {
858 } 858 }
859} 859}
860#[doc = "Reader of field `FFIE0`"] 860#[doc = "Reader of field `FFIE0`"]
861pub type FFIE0_R = crate::R<bool, FFIE0_A>; 861pub type FFIE0_R = crate::can::bx::R<bool, FFIE0_A>;
862impl FFIE0_R { 862impl FFIE0_R {
863 #[doc = r"Get enumerated values variant"] 863 #[doc = r"Get enumerated values variant"]
864 #[inline(always)] 864 #[inline(always)]
@@ -935,7 +935,7 @@ impl From<FMPIE0_A> for bool {
935 } 935 }
936} 936}
937#[doc = "Reader of field `FMPIE0`"] 937#[doc = "Reader of field `FMPIE0`"]
938pub type FMPIE0_R = crate::R<bool, FMPIE0_A>; 938pub type FMPIE0_R = crate::can::bx::R<bool, FMPIE0_A>;
939impl FMPIE0_R { 939impl FMPIE0_R {
940 #[doc = r"Get enumerated values variant"] 940 #[doc = r"Get enumerated values variant"]
941 #[inline(always)] 941 #[inline(always)]
@@ -1012,7 +1012,7 @@ impl From<TMEIE_A> for bool {
1012 } 1012 }
1013} 1013}
1014#[doc = "Reader of field `TMEIE`"] 1014#[doc = "Reader of field `TMEIE`"]
1015pub type TMEIE_R = crate::R<bool, TMEIE_A>; 1015pub type TMEIE_R = crate::can::bx::R<bool, TMEIE_A>;
1016impl TMEIE_R { 1016impl TMEIE_R {
1017 #[doc = r"Get enumerated values variant"] 1017 #[doc = r"Get enumerated values variant"]
1018 #[inline(always)] 1018 #[inline(always)]
diff --git a/embassy-stm32/src/can/bx/pac/can/mcr.rs b/embassy-stm32/src/can/bx/pac/can/mcr.rs
index 5e47c0901..bce9561d9 100644
--- a/embassy-stm32/src/can/bx/pac/can/mcr.rs
+++ b/embassy-stm32/src/can/bx/pac/can/mcr.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register MCR"] 1#[doc = "Reader of register MCR"]
2pub type R = crate::R<u32, super::MCR>; 2pub type R = crate::can::bx::R<u32, super::MCR>;
3#[doc = "Writer for register MCR"] 3#[doc = "Writer for register MCR"]
4pub type W = crate::W<u32, super::MCR>; 4pub type W = crate::can::bx::W<u32, super::MCR>;
5#[doc = "Register MCR `reset()`'s with value 0"] 5#[doc = "Register MCR `reset()`'s with value 0"]
6impl crate::ResetValue for super::MCR { 6impl crate::can::bx::ResetValue for super::MCR {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -11,7 +11,7 @@ impl crate::ResetValue for super::MCR {
11 } 11 }
12} 12}
13#[doc = "Reader of field `DBF`"] 13#[doc = "Reader of field `DBF`"]
14pub type DBF_R = crate::R<bool, bool>; 14pub type DBF_R = crate::can::bx::R<bool, bool>;
15#[doc = "Write proxy for field `DBF`"] 15#[doc = "Write proxy for field `DBF`"]
16pub struct DBF_W<'a> { 16pub struct DBF_W<'a> {
17 w: &'a mut W, 17 w: &'a mut W,
@@ -35,7 +35,7 @@ impl<'a> DBF_W<'a> {
35 } 35 }
36} 36}
37#[doc = "Reader of field `RESET`"] 37#[doc = "Reader of field `RESET`"]
38pub type RESET_R = crate::R<bool, bool>; 38pub type RESET_R = crate::can::bx::R<bool, bool>;
39#[doc = "Write proxy for field `RESET`"] 39#[doc = "Write proxy for field `RESET`"]
40pub struct RESET_W<'a> { 40pub struct RESET_W<'a> {
41 w: &'a mut W, 41 w: &'a mut W,
@@ -59,7 +59,7 @@ impl<'a> RESET_W<'a> {
59 } 59 }
60} 60}
61#[doc = "Reader of field `TTCM`"] 61#[doc = "Reader of field `TTCM`"]
62pub type TTCM_R = crate::R<bool, bool>; 62pub type TTCM_R = crate::can::bx::R<bool, bool>;
63#[doc = "Write proxy for field `TTCM`"] 63#[doc = "Write proxy for field `TTCM`"]
64pub struct TTCM_W<'a> { 64pub struct TTCM_W<'a> {
65 w: &'a mut W, 65 w: &'a mut W,
@@ -83,7 +83,7 @@ impl<'a> TTCM_W<'a> {
83 } 83 }
84} 84}
85#[doc = "Reader of field `ABOM`"] 85#[doc = "Reader of field `ABOM`"]
86pub type ABOM_R = crate::R<bool, bool>; 86pub type ABOM_R = crate::can::bx::R<bool, bool>;
87#[doc = "Write proxy for field `ABOM`"] 87#[doc = "Write proxy for field `ABOM`"]
88pub struct ABOM_W<'a> { 88pub struct ABOM_W<'a> {
89 w: &'a mut W, 89 w: &'a mut W,
@@ -107,7 +107,7 @@ impl<'a> ABOM_W<'a> {
107 } 107 }
108} 108}
109#[doc = "Reader of field `AWUM`"] 109#[doc = "Reader of field `AWUM`"]
110pub type AWUM_R = crate::R<bool, bool>; 110pub type AWUM_R = crate::can::bx::R<bool, bool>;
111#[doc = "Write proxy for field `AWUM`"] 111#[doc = "Write proxy for field `AWUM`"]
112pub struct AWUM_W<'a> { 112pub struct AWUM_W<'a> {
113 w: &'a mut W, 113 w: &'a mut W,
@@ -131,7 +131,7 @@ impl<'a> AWUM_W<'a> {
131 } 131 }
132} 132}
133#[doc = "Reader of field `NART`"] 133#[doc = "Reader of field `NART`"]
134pub type NART_R = crate::R<bool, bool>; 134pub type NART_R = crate::can::bx::R<bool, bool>;
135#[doc = "Write proxy for field `NART`"] 135#[doc = "Write proxy for field `NART`"]
136pub struct NART_W<'a> { 136pub struct NART_W<'a> {
137 w: &'a mut W, 137 w: &'a mut W,
@@ -155,7 +155,7 @@ impl<'a> NART_W<'a> {
155 } 155 }
156} 156}
157#[doc = "Reader of field `RFLM`"] 157#[doc = "Reader of field `RFLM`"]
158pub type RFLM_R = crate::R<bool, bool>; 158pub type RFLM_R = crate::can::bx::R<bool, bool>;
159#[doc = "Write proxy for field `RFLM`"] 159#[doc = "Write proxy for field `RFLM`"]
160pub struct RFLM_W<'a> { 160pub struct RFLM_W<'a> {
161 w: &'a mut W, 161 w: &'a mut W,
@@ -179,7 +179,7 @@ impl<'a> RFLM_W<'a> {
179 } 179 }
180} 180}
181#[doc = "Reader of field `TXFP`"] 181#[doc = "Reader of field `TXFP`"]
182pub type TXFP_R = crate::R<bool, bool>; 182pub type TXFP_R = crate::can::bx::R<bool, bool>;
183#[doc = "Write proxy for field `TXFP`"] 183#[doc = "Write proxy for field `TXFP`"]
184pub struct TXFP_W<'a> { 184pub struct TXFP_W<'a> {
185 w: &'a mut W, 185 w: &'a mut W,
@@ -203,7 +203,7 @@ impl<'a> TXFP_W<'a> {
203 } 203 }
204} 204}
205#[doc = "Reader of field `SLEEP`"] 205#[doc = "Reader of field `SLEEP`"]
206pub type SLEEP_R = crate::R<bool, bool>; 206pub type SLEEP_R = crate::can::bx::R<bool, bool>;
207#[doc = "Write proxy for field `SLEEP`"] 207#[doc = "Write proxy for field `SLEEP`"]
208pub struct SLEEP_W<'a> { 208pub struct SLEEP_W<'a> {
209 w: &'a mut W, 209 w: &'a mut W,
@@ -227,7 +227,7 @@ impl<'a> SLEEP_W<'a> {
227 } 227 }
228} 228}
229#[doc = "Reader of field `INRQ`"] 229#[doc = "Reader of field `INRQ`"]
230pub type INRQ_R = crate::R<bool, bool>; 230pub type INRQ_R = crate::can::bx::R<bool, bool>;
231#[doc = "Write proxy for field `INRQ`"] 231#[doc = "Write proxy for field `INRQ`"]
232pub struct INRQ_W<'a> { 232pub struct INRQ_W<'a> {
233 w: &'a mut W, 233 w: &'a mut W,
diff --git a/embassy-stm32/src/can/bx/pac/can/msr.rs b/embassy-stm32/src/can/bx/pac/can/msr.rs
index 18e21c844..2e076b14e 100644
--- a/embassy-stm32/src/can/bx/pac/can/msr.rs
+++ b/embassy-stm32/src/can/bx/pac/can/msr.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register MSR"] 1#[doc = "Reader of register MSR"]
2pub type R = crate::R<u32, super::MSR>; 2pub type R = crate::can::bx::R<u32, super::MSR>;
3#[doc = "Writer for register MSR"] 3#[doc = "Writer for register MSR"]
4pub type W = crate::W<u32, super::MSR>; 4pub type W = crate::can::bx::W<u32, super::MSR>;
5#[doc = "Register MSR `reset()`'s with value 0"] 5#[doc = "Register MSR `reset()`'s with value 0"]
6impl crate::ResetValue for super::MSR { 6impl crate::can::bx::ResetValue for super::MSR {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -11,15 +11,15 @@ impl crate::ResetValue for super::MSR {
11 } 11 }
12} 12}
13#[doc = "Reader of field `RX`"] 13#[doc = "Reader of field `RX`"]
14pub type RX_R = crate::R<bool, bool>; 14pub type RX_R = crate::can::bx::R<bool, bool>;
15#[doc = "Reader of field `SAMP`"] 15#[doc = "Reader of field `SAMP`"]
16pub type SAMP_R = crate::R<bool, bool>; 16pub type SAMP_R = crate::can::bx::R<bool, bool>;
17#[doc = "Reader of field `RXM`"] 17#[doc = "Reader of field `RXM`"]
18pub type RXM_R = crate::R<bool, bool>; 18pub type RXM_R = crate::can::bx::R<bool, bool>;
19#[doc = "Reader of field `TXM`"] 19#[doc = "Reader of field `TXM`"]
20pub type TXM_R = crate::R<bool, bool>; 20pub type TXM_R = crate::can::bx::R<bool, bool>;
21#[doc = "Reader of field `SLAKI`"] 21#[doc = "Reader of field `SLAKI`"]
22pub type SLAKI_R = crate::R<bool, bool>; 22pub type SLAKI_R = crate::can::bx::R<bool, bool>;
23#[doc = "Write proxy for field `SLAKI`"] 23#[doc = "Write proxy for field `SLAKI`"]
24pub struct SLAKI_W<'a> { 24pub struct SLAKI_W<'a> {
25 w: &'a mut W, 25 w: &'a mut W,
@@ -43,7 +43,7 @@ impl<'a> SLAKI_W<'a> {
43 } 43 }
44} 44}
45#[doc = "Reader of field `WKUI`"] 45#[doc = "Reader of field `WKUI`"]
46pub type WKUI_R = crate::R<bool, bool>; 46pub type WKUI_R = crate::can::bx::R<bool, bool>;
47#[doc = "Write proxy for field `WKUI`"] 47#[doc = "Write proxy for field `WKUI`"]
48pub struct WKUI_W<'a> { 48pub struct WKUI_W<'a> {
49 w: &'a mut W, 49 w: &'a mut W,
@@ -67,7 +67,7 @@ impl<'a> WKUI_W<'a> {
67 } 67 }
68} 68}
69#[doc = "Reader of field `ERRI`"] 69#[doc = "Reader of field `ERRI`"]
70pub type ERRI_R = crate::R<bool, bool>; 70pub type ERRI_R = crate::can::bx::R<bool, bool>;
71#[doc = "Write proxy for field `ERRI`"] 71#[doc = "Write proxy for field `ERRI`"]
72pub struct ERRI_W<'a> { 72pub struct ERRI_W<'a> {
73 w: &'a mut W, 73 w: &'a mut W,
@@ -91,9 +91,9 @@ impl<'a> ERRI_W<'a> {
91 } 91 }
92} 92}
93#[doc = "Reader of field `SLAK`"] 93#[doc = "Reader of field `SLAK`"]
94pub type SLAK_R = crate::R<bool, bool>; 94pub type SLAK_R = crate::can::bx::R<bool, bool>;
95#[doc = "Reader of field `INAK`"] 95#[doc = "Reader of field `INAK`"]
96pub type INAK_R = crate::R<bool, bool>; 96pub type INAK_R = crate::can::bx::R<bool, bool>;
97impl R { 97impl R {
98 #[doc = "Bit 11 - RX"] 98 #[doc = "Bit 11 - RX"]
99 #[inline(always)] 99 #[inline(always)]
diff --git a/embassy-stm32/src/can/bx/pac/can/rfr.rs b/embassy-stm32/src/can/bx/pac/can/rfr.rs
index 6f5a960d1..1a4047cb4 100644
--- a/embassy-stm32/src/can/bx/pac/can/rfr.rs
+++ b/embassy-stm32/src/can/bx/pac/can/rfr.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register RF%sR"] 1#[doc = "Reader of register RF%sR"]
2pub type R = crate::R<u32, super::RFR>; 2pub type R = crate::can::bx::R<u32, super::RFR>;
3#[doc = "Writer for register RF%sR"] 3#[doc = "Writer for register RF%sR"]
4pub type W = crate::W<u32, super::RFR>; 4pub type W = crate::can::bx::W<u32, super::RFR>;
5#[doc = "Register RF%sR `reset()`'s with value 0"] 5#[doc = "Register RF%sR `reset()`'s with value 0"]
6impl crate::ResetValue for super::RFR { 6impl crate::can::bx::ResetValue for super::RFR {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -23,12 +23,12 @@ impl From<RFOM_A> for bool {
23 } 23 }
24} 24}
25#[doc = "Reader of field `RFOM`"] 25#[doc = "Reader of field `RFOM`"]
26pub type RFOM_R = crate::R<bool, RFOM_A>; 26pub type RFOM_R = crate::can::bx::R<bool, RFOM_A>;
27impl RFOM_R { 27impl RFOM_R {
28 #[doc = r"Get enumerated values variant"] 28 #[doc = r"Get enumerated values variant"]
29 #[inline(always)] 29 #[inline(always)]
30 pub fn variant(&self) -> crate::Variant<bool, RFOM_A> { 30 pub fn variant(&self) -> crate::can::bx::Variant<bool, RFOM_A> {
31 use crate::Variant::*; 31 use crate::can::bx::Variant::*;
32 match self.bits { 32 match self.bits {
33 true => Val(RFOM_A::RELEASE), 33 true => Val(RFOM_A::RELEASE),
34 i => Res(i), 34 i => Res(i),
@@ -89,7 +89,7 @@ impl From<FOVR_A> for bool {
89 } 89 }
90} 90}
91#[doc = "Reader of field `FOVR`"] 91#[doc = "Reader of field `FOVR`"]
92pub type FOVR_R = crate::R<bool, FOVR_A>; 92pub type FOVR_R = crate::can::bx::R<bool, FOVR_A>;
93impl FOVR_R { 93impl FOVR_R {
94 #[doc = r"Get enumerated values variant"] 94 #[doc = r"Get enumerated values variant"]
95 #[inline(always)] 95 #[inline(always)]
@@ -171,7 +171,7 @@ impl From<FULL_A> for bool {
171 } 171 }
172} 172}
173#[doc = "Reader of field `FULL`"] 173#[doc = "Reader of field `FULL`"]
174pub type FULL_R = crate::R<bool, FULL_A>; 174pub type FULL_R = crate::can::bx::R<bool, FULL_A>;
175impl FULL_R { 175impl FULL_R {
176 #[doc = r"Get enumerated values variant"] 176 #[doc = r"Get enumerated values variant"]
177 #[inline(always)] 177 #[inline(always)]
@@ -239,7 +239,7 @@ impl<'a> FULL_W<'a> {
239 } 239 }
240} 240}
241#[doc = "Reader of field `FMP`"] 241#[doc = "Reader of field `FMP`"]
242pub type FMP_R = crate::R<u8, u8>; 242pub type FMP_R = crate::can::bx::R<u8, u8>;
243impl R { 243impl R {
244 #[doc = "Bit 5 - RFOM0"] 244 #[doc = "Bit 5 - RFOM0"]
245 #[inline(always)] 245 #[inline(always)]
diff --git a/embassy-stm32/src/can/bx/pac/can/rx.rs b/embassy-stm32/src/can/bx/pac/can/rx.rs
index dba344e7c..58ce7be4a 100644
--- a/embassy-stm32/src/can/bx/pac/can/rx.rs
+++ b/embassy-stm32/src/can/bx/pac/can/rx.rs
@@ -1,36 +1,36 @@
1#[doc = "CAN_RI0R\n\nThis register you can [`read`](crate::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rir](rir) module"] 1#[doc = "CAN_RI0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rir](rir) module"]
2pub type RIR = crate::Reg<u32, _RIR>; 2pub type RIR = crate::can::bx::Reg<u32, _RIR>;
3#[allow(missing_docs)] 3#[allow(missing_docs)]
4#[doc(hidden)] 4#[doc(hidden)]
5pub struct _RIR; 5pub struct _RIR;
6#[doc = "`read()` method returns [rir::R](rir::R) reader structure"] 6#[doc = "`read()` method returns [rir::R](rir::R) reader structure"]
7impl crate::Readable for RIR {} 7impl crate::can::bx::Readable for RIR {}
8#[doc = "CAN_RI0R"] 8#[doc = "CAN_RI0R"]
9pub mod rir; 9pub mod rir;
10#[doc = "CAN_RDT0R\n\nThis register you can [`read`](crate::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rdtr](rdtr) module"] 10#[doc = "CAN_RDT0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rdtr](rdtr) module"]
11pub type RDTR = crate::Reg<u32, _RDTR>; 11pub type RDTR = crate::can::bx::Reg<u32, _RDTR>;
12#[allow(missing_docs)] 12#[allow(missing_docs)]
13#[doc(hidden)] 13#[doc(hidden)]
14pub struct _RDTR; 14pub struct _RDTR;
15#[doc = "`read()` method returns [rdtr::R](rdtr::R) reader structure"] 15#[doc = "`read()` method returns [rdtr::R](rdtr::R) reader structure"]
16impl crate::Readable for RDTR {} 16impl crate::can::bx::Readable for RDTR {}
17#[doc = "CAN_RDT0R"] 17#[doc = "CAN_RDT0R"]
18pub mod rdtr; 18pub mod rdtr;
19#[doc = "CAN_RDL0R\n\nThis register you can [`read`](crate::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rdlr](rdlr) module"] 19#[doc = "CAN_RDL0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rdlr](rdlr) module"]
20pub type RDLR = crate::Reg<u32, _RDLR>; 20pub type RDLR = crate::can::bx::Reg<u32, _RDLR>;
21#[allow(missing_docs)] 21#[allow(missing_docs)]
22#[doc(hidden)] 22#[doc(hidden)]
23pub struct _RDLR; 23pub struct _RDLR;
24#[doc = "`read()` method returns [rdlr::R](rdlr::R) reader structure"] 24#[doc = "`read()` method returns [rdlr::R](rdlr::R) reader structure"]
25impl crate::Readable for RDLR {} 25impl crate::can::bx::Readable for RDLR {}
26#[doc = "CAN_RDL0R"] 26#[doc = "CAN_RDL0R"]
27pub mod rdlr; 27pub mod rdlr;
28#[doc = "CAN_RDH0R\n\nThis register you can [`read`](crate::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rdhr](rdhr) module"] 28#[doc = "CAN_RDH0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rdhr](rdhr) module"]
29pub type RDHR = crate::Reg<u32, _RDHR>; 29pub type RDHR = crate::can::bx::Reg<u32, _RDHR>;
30#[allow(missing_docs)] 30#[allow(missing_docs)]
31#[doc(hidden)] 31#[doc(hidden)]
32pub struct _RDHR; 32pub struct _RDHR;
33#[doc = "`read()` method returns [rdhr::R](rdhr::R) reader structure"] 33#[doc = "`read()` method returns [rdhr::R](rdhr::R) reader structure"]
34impl crate::Readable for RDHR {} 34impl crate::can::bx::Readable for RDHR {}
35#[doc = "CAN_RDH0R"] 35#[doc = "CAN_RDH0R"]
36pub mod rdhr; 36pub mod rdhr;
diff --git a/embassy-stm32/src/can/bx/pac/can/rx/rdhr.rs b/embassy-stm32/src/can/bx/pac/can/rx/rdhr.rs
index a0e6a52d0..0f3ccc307 100644
--- a/embassy-stm32/src/can/bx/pac/can/rx/rdhr.rs
+++ b/embassy-stm32/src/can/bx/pac/can/rx/rdhr.rs
@@ -1,13 +1,13 @@
1#[doc = "Reader of register RDHR"] 1#[doc = "Reader of register RDHR"]
2pub type R = crate::R<u32, super::RDHR>; 2pub type R = crate::can::bx::R<u32, super::RDHR>;
3#[doc = "Reader of field `DATA7`"] 3#[doc = "Reader of field `DATA7`"]
4pub type DATA7_R = crate::R<u8, u8>; 4pub type DATA7_R = crate::can::bx::R<u8, u8>;
5#[doc = "Reader of field `DATA6`"] 5#[doc = "Reader of field `DATA6`"]
6pub type DATA6_R = crate::R<u8, u8>; 6pub type DATA6_R = crate::can::bx::R<u8, u8>;
7#[doc = "Reader of field `DATA5`"] 7#[doc = "Reader of field `DATA5`"]
8pub type DATA5_R = crate::R<u8, u8>; 8pub type DATA5_R = crate::can::bx::R<u8, u8>;
9#[doc = "Reader of field `DATA4`"] 9#[doc = "Reader of field `DATA4`"]
10pub type DATA4_R = crate::R<u8, u8>; 10pub type DATA4_R = crate::can::bx::R<u8, u8>;
11impl R { 11impl R {
12 #[doc = "Bits 24:31 - DATA7"] 12 #[doc = "Bits 24:31 - DATA7"]
13 #[inline(always)] 13 #[inline(always)]
diff --git a/embassy-stm32/src/can/bx/pac/can/rx/rdlr.rs b/embassy-stm32/src/can/bx/pac/can/rx/rdlr.rs
index e61746669..16d739540 100644
--- a/embassy-stm32/src/can/bx/pac/can/rx/rdlr.rs
+++ b/embassy-stm32/src/can/bx/pac/can/rx/rdlr.rs
@@ -1,13 +1,13 @@
1#[doc = "Reader of register RDLR"] 1#[doc = "Reader of register RDLR"]
2pub type R = crate::R<u32, super::RDLR>; 2pub type R = crate::can::bx::R<u32, super::RDLR>;
3#[doc = "Reader of field `DATA3`"] 3#[doc = "Reader of field `DATA3`"]
4pub type DATA3_R = crate::R<u8, u8>; 4pub type DATA3_R = crate::can::bx::R<u8, u8>;
5#[doc = "Reader of field `DATA2`"] 5#[doc = "Reader of field `DATA2`"]
6pub type DATA2_R = crate::R<u8, u8>; 6pub type DATA2_R = crate::can::bx::R<u8, u8>;
7#[doc = "Reader of field `DATA1`"] 7#[doc = "Reader of field `DATA1`"]
8pub type DATA1_R = crate::R<u8, u8>; 8pub type DATA1_R = crate::can::bx::R<u8, u8>;
9#[doc = "Reader of field `DATA0`"] 9#[doc = "Reader of field `DATA0`"]
10pub type DATA0_R = crate::R<u8, u8>; 10pub type DATA0_R = crate::can::bx::R<u8, u8>;
11impl R { 11impl R {
12 #[doc = "Bits 24:31 - DATA3"] 12 #[doc = "Bits 24:31 - DATA3"]
13 #[inline(always)] 13 #[inline(always)]
diff --git a/embassy-stm32/src/can/bx/pac/can/rx/rdtr.rs b/embassy-stm32/src/can/bx/pac/can/rx/rdtr.rs
index 6778a7b4a..4a48e1f2e 100644
--- a/embassy-stm32/src/can/bx/pac/can/rx/rdtr.rs
+++ b/embassy-stm32/src/can/bx/pac/can/rx/rdtr.rs
@@ -1,11 +1,11 @@
1#[doc = "Reader of register RDTR"] 1#[doc = "Reader of register RDTR"]
2pub type R = crate::R<u32, super::RDTR>; 2pub type R = crate::can::bx::R<u32, super::RDTR>;
3#[doc = "Reader of field `TIME`"] 3#[doc = "Reader of field `TIME`"]
4pub type TIME_R = crate::R<u16, u16>; 4pub type TIME_R = crate::can::bx::R<u16, u16>;
5#[doc = "Reader of field `FMI`"] 5#[doc = "Reader of field `FMI`"]
6pub type FMI_R = crate::R<u8, u8>; 6pub type FMI_R = crate::can::bx::R<u8, u8>;
7#[doc = "Reader of field `DLC`"] 7#[doc = "Reader of field `DLC`"]
8pub type DLC_R = crate::R<u8, u8>; 8pub type DLC_R = crate::can::bx::R<u8, u8>;
9impl R { 9impl R {
10 #[doc = "Bits 16:31 - TIME"] 10 #[doc = "Bits 16:31 - TIME"]
11 #[inline(always)] 11 #[inline(always)]
diff --git a/embassy-stm32/src/can/bx/pac/can/rx/rir.rs b/embassy-stm32/src/can/bx/pac/can/rx/rir.rs
index c0e4248f4..22e37b1cd 100644
--- a/embassy-stm32/src/can/bx/pac/can/rx/rir.rs
+++ b/embassy-stm32/src/can/bx/pac/can/rx/rir.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register RIR"] 1#[doc = "Reader of register RIR"]
2pub type R = crate::R<u32, super::RIR>; 2pub type R = crate::can::bx::R<u32, super::RIR>;
3#[doc = "Reader of field `STID`"] 3#[doc = "Reader of field `STID`"]
4pub type STID_R = crate::R<u16, u16>; 4pub type STID_R = crate::can::bx::R<u16, u16>;
5#[doc = "Reader of field `EXID`"] 5#[doc = "Reader of field `EXID`"]
6pub type EXID_R = crate::R<u32, u32>; 6pub type EXID_R = crate::can::bx::R<u32, u32>;
7#[doc = "IDE\n\nValue on reset: 0"] 7#[doc = "IDE\n\nValue on reset: 0"]
8#[derive(Clone, Copy, Debug, PartialEq)] 8#[derive(Clone, Copy, Debug, PartialEq)]
9pub enum IDE_A { 9pub enum IDE_A {
@@ -19,7 +19,7 @@ impl From<IDE_A> for bool {
19 } 19 }
20} 20}
21#[doc = "Reader of field `IDE`"] 21#[doc = "Reader of field `IDE`"]
22pub type IDE_R = crate::R<bool, IDE_A>; 22pub type IDE_R = crate::can::bx::R<bool, IDE_A>;
23impl IDE_R { 23impl IDE_R {
24 #[doc = r"Get enumerated values variant"] 24 #[doc = r"Get enumerated values variant"]
25 #[inline(always)] 25 #[inline(always)]
@@ -55,7 +55,7 @@ impl From<RTR_A> for bool {
55 } 55 }
56} 56}
57#[doc = "Reader of field `RTR`"] 57#[doc = "Reader of field `RTR`"]
58pub type RTR_R = crate::R<bool, RTR_A>; 58pub type RTR_R = crate::can::bx::R<bool, RTR_A>;
59impl RTR_R { 59impl RTR_R {
60 #[doc = r"Get enumerated values variant"] 60 #[doc = r"Get enumerated values variant"]
61 #[inline(always)] 61 #[inline(always)]
diff --git a/embassy-stm32/src/can/bx/pac/can/tsr.rs b/embassy-stm32/src/can/bx/pac/can/tsr.rs
index 2527b36a5..3317b7bd5 100644
--- a/embassy-stm32/src/can/bx/pac/can/tsr.rs
+++ b/embassy-stm32/src/can/bx/pac/can/tsr.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register TSR"] 1#[doc = "Reader of register TSR"]
2pub type R = crate::R<u32, super::TSR>; 2pub type R = crate::can::bx::R<u32, super::TSR>;
3#[doc = "Writer for register TSR"] 3#[doc = "Writer for register TSR"]
4pub type W = crate::W<u32, super::TSR>; 4pub type W = crate::can::bx::W<u32, super::TSR>;
5#[doc = "Register TSR `reset()`'s with value 0"] 5#[doc = "Register TSR `reset()`'s with value 0"]
6impl crate::ResetValue for super::TSR { 6impl crate::can::bx::ResetValue for super::TSR {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -11,21 +11,21 @@ impl crate::ResetValue for super::TSR {
11 } 11 }
12} 12}
13#[doc = "Reader of field `LOW2`"] 13#[doc = "Reader of field `LOW2`"]
14pub type LOW2_R = crate::R<bool, bool>; 14pub type LOW2_R = crate::can::bx::R<bool, bool>;
15#[doc = "Reader of field `LOW1`"] 15#[doc = "Reader of field `LOW1`"]
16pub type LOW1_R = crate::R<bool, bool>; 16pub type LOW1_R = crate::can::bx::R<bool, bool>;
17#[doc = "Reader of field `LOW0`"] 17#[doc = "Reader of field `LOW0`"]
18pub type LOW0_R = crate::R<bool, bool>; 18pub type LOW0_R = crate::can::bx::R<bool, bool>;
19#[doc = "Reader of field `TME2`"] 19#[doc = "Reader of field `TME2`"]
20pub type TME2_R = crate::R<bool, bool>; 20pub type TME2_R = crate::can::bx::R<bool, bool>;
21#[doc = "Reader of field `TME1`"] 21#[doc = "Reader of field `TME1`"]
22pub type TME1_R = crate::R<bool, bool>; 22pub type TME1_R = crate::can::bx::R<bool, bool>;
23#[doc = "Reader of field `TME0`"] 23#[doc = "Reader of field `TME0`"]
24pub type TME0_R = crate::R<bool, bool>; 24pub type TME0_R = crate::can::bx::R<bool, bool>;
25#[doc = "Reader of field `CODE`"] 25#[doc = "Reader of field `CODE`"]
26pub type CODE_R = crate::R<u8, u8>; 26pub type CODE_R = crate::can::bx::R<u8, u8>;
27#[doc = "Reader of field `ABRQ2`"] 27#[doc = "Reader of field `ABRQ2`"]
28pub type ABRQ2_R = crate::R<bool, bool>; 28pub type ABRQ2_R = crate::can::bx::R<bool, bool>;
29#[doc = "Write proxy for field `ABRQ2`"] 29#[doc = "Write proxy for field `ABRQ2`"]
30pub struct ABRQ2_W<'a> { 30pub struct ABRQ2_W<'a> {
31 w: &'a mut W, 31 w: &'a mut W,
@@ -49,7 +49,7 @@ impl<'a> ABRQ2_W<'a> {
49 } 49 }
50} 50}
51#[doc = "Reader of field `TERR2`"] 51#[doc = "Reader of field `TERR2`"]
52pub type TERR2_R = crate::R<bool, bool>; 52pub type TERR2_R = crate::can::bx::R<bool, bool>;
53#[doc = "Write proxy for field `TERR2`"] 53#[doc = "Write proxy for field `TERR2`"]
54pub struct TERR2_W<'a> { 54pub struct TERR2_W<'a> {
55 w: &'a mut W, 55 w: &'a mut W,
@@ -73,7 +73,7 @@ impl<'a> TERR2_W<'a> {
73 } 73 }
74} 74}
75#[doc = "Reader of field `ALST2`"] 75#[doc = "Reader of field `ALST2`"]
76pub type ALST2_R = crate::R<bool, bool>; 76pub type ALST2_R = crate::can::bx::R<bool, bool>;
77#[doc = "Write proxy for field `ALST2`"] 77#[doc = "Write proxy for field `ALST2`"]
78pub struct ALST2_W<'a> { 78pub struct ALST2_W<'a> {
79 w: &'a mut W, 79 w: &'a mut W,
@@ -97,7 +97,7 @@ impl<'a> ALST2_W<'a> {
97 } 97 }
98} 98}
99#[doc = "Reader of field `TXOK2`"] 99#[doc = "Reader of field `TXOK2`"]
100pub type TXOK2_R = crate::R<bool, bool>; 100pub type TXOK2_R = crate::can::bx::R<bool, bool>;
101#[doc = "Write proxy for field `TXOK2`"] 101#[doc = "Write proxy for field `TXOK2`"]
102pub struct TXOK2_W<'a> { 102pub struct TXOK2_W<'a> {
103 w: &'a mut W, 103 w: &'a mut W,
@@ -121,7 +121,7 @@ impl<'a> TXOK2_W<'a> {
121 } 121 }
122} 122}
123#[doc = "Reader of field `RQCP2`"] 123#[doc = "Reader of field `RQCP2`"]
124pub type RQCP2_R = crate::R<bool, bool>; 124pub type RQCP2_R = crate::can::bx::R<bool, bool>;
125#[doc = "Write proxy for field `RQCP2`"] 125#[doc = "Write proxy for field `RQCP2`"]
126pub struct RQCP2_W<'a> { 126pub struct RQCP2_W<'a> {
127 w: &'a mut W, 127 w: &'a mut W,
@@ -145,7 +145,7 @@ impl<'a> RQCP2_W<'a> {
145 } 145 }
146} 146}
147#[doc = "Reader of field `ABRQ1`"] 147#[doc = "Reader of field `ABRQ1`"]
148pub type ABRQ1_R = crate::R<bool, bool>; 148pub type ABRQ1_R = crate::can::bx::R<bool, bool>;
149#[doc = "Write proxy for field `ABRQ1`"] 149#[doc = "Write proxy for field `ABRQ1`"]
150pub struct ABRQ1_W<'a> { 150pub struct ABRQ1_W<'a> {
151 w: &'a mut W, 151 w: &'a mut W,
@@ -169,7 +169,7 @@ impl<'a> ABRQ1_W<'a> {
169 } 169 }
170} 170}
171#[doc = "Reader of field `TERR1`"] 171#[doc = "Reader of field `TERR1`"]
172pub type TERR1_R = crate::R<bool, bool>; 172pub type TERR1_R = crate::can::bx::R<bool, bool>;
173#[doc = "Write proxy for field `TERR1`"] 173#[doc = "Write proxy for field `TERR1`"]
174pub struct TERR1_W<'a> { 174pub struct TERR1_W<'a> {
175 w: &'a mut W, 175 w: &'a mut W,
@@ -193,7 +193,7 @@ impl<'a> TERR1_W<'a> {
193 } 193 }
194} 194}
195#[doc = "Reader of field `ALST1`"] 195#[doc = "Reader of field `ALST1`"]
196pub type ALST1_R = crate::R<bool, bool>; 196pub type ALST1_R = crate::can::bx::R<bool, bool>;
197#[doc = "Write proxy for field `ALST1`"] 197#[doc = "Write proxy for field `ALST1`"]
198pub struct ALST1_W<'a> { 198pub struct ALST1_W<'a> {
199 w: &'a mut W, 199 w: &'a mut W,
@@ -217,7 +217,7 @@ impl<'a> ALST1_W<'a> {
217 } 217 }
218} 218}
219#[doc = "Reader of field `TXOK1`"] 219#[doc = "Reader of field `TXOK1`"]
220pub type TXOK1_R = crate::R<bool, bool>; 220pub type TXOK1_R = crate::can::bx::R<bool, bool>;
221#[doc = "Write proxy for field `TXOK1`"] 221#[doc = "Write proxy for field `TXOK1`"]
222pub struct TXOK1_W<'a> { 222pub struct TXOK1_W<'a> {
223 w: &'a mut W, 223 w: &'a mut W,
@@ -241,7 +241,7 @@ impl<'a> TXOK1_W<'a> {
241 } 241 }
242} 242}
243#[doc = "Reader of field `RQCP1`"] 243#[doc = "Reader of field `RQCP1`"]
244pub type RQCP1_R = crate::R<bool, bool>; 244pub type RQCP1_R = crate::can::bx::R<bool, bool>;
245#[doc = "Write proxy for field `RQCP1`"] 245#[doc = "Write proxy for field `RQCP1`"]
246pub struct RQCP1_W<'a> { 246pub struct RQCP1_W<'a> {
247 w: &'a mut W, 247 w: &'a mut W,
@@ -265,7 +265,7 @@ impl<'a> RQCP1_W<'a> {
265 } 265 }
266} 266}
267#[doc = "Reader of field `ABRQ0`"] 267#[doc = "Reader of field `ABRQ0`"]
268pub type ABRQ0_R = crate::R<bool, bool>; 268pub type ABRQ0_R = crate::can::bx::R<bool, bool>;
269#[doc = "Write proxy for field `ABRQ0`"] 269#[doc = "Write proxy for field `ABRQ0`"]
270pub struct ABRQ0_W<'a> { 270pub struct ABRQ0_W<'a> {
271 w: &'a mut W, 271 w: &'a mut W,
@@ -289,7 +289,7 @@ impl<'a> ABRQ0_W<'a> {
289 } 289 }
290} 290}
291#[doc = "Reader of field `TERR0`"] 291#[doc = "Reader of field `TERR0`"]
292pub type TERR0_R = crate::R<bool, bool>; 292pub type TERR0_R = crate::can::bx::R<bool, bool>;
293#[doc = "Write proxy for field `TERR0`"] 293#[doc = "Write proxy for field `TERR0`"]
294pub struct TERR0_W<'a> { 294pub struct TERR0_W<'a> {
295 w: &'a mut W, 295 w: &'a mut W,
@@ -313,7 +313,7 @@ impl<'a> TERR0_W<'a> {
313 } 313 }
314} 314}
315#[doc = "Reader of field `ALST0`"] 315#[doc = "Reader of field `ALST0`"]
316pub type ALST0_R = crate::R<bool, bool>; 316pub type ALST0_R = crate::can::bx::R<bool, bool>;
317#[doc = "Write proxy for field `ALST0`"] 317#[doc = "Write proxy for field `ALST0`"]
318pub struct ALST0_W<'a> { 318pub struct ALST0_W<'a> {
319 w: &'a mut W, 319 w: &'a mut W,
@@ -337,7 +337,7 @@ impl<'a> ALST0_W<'a> {
337 } 337 }
338} 338}
339#[doc = "Reader of field `TXOK0`"] 339#[doc = "Reader of field `TXOK0`"]
340pub type TXOK0_R = crate::R<bool, bool>; 340pub type TXOK0_R = crate::can::bx::R<bool, bool>;
341#[doc = "Write proxy for field `TXOK0`"] 341#[doc = "Write proxy for field `TXOK0`"]
342pub struct TXOK0_W<'a> { 342pub struct TXOK0_W<'a> {
343 w: &'a mut W, 343 w: &'a mut W,
@@ -361,7 +361,7 @@ impl<'a> TXOK0_W<'a> {
361 } 361 }
362} 362}
363#[doc = "Reader of field `RQCP0`"] 363#[doc = "Reader of field `RQCP0`"]
364pub type RQCP0_R = crate::R<bool, bool>; 364pub type RQCP0_R = crate::can::bx::R<bool, bool>;
365#[doc = "Write proxy for field `RQCP0`"] 365#[doc = "Write proxy for field `RQCP0`"]
366pub struct RQCP0_W<'a> { 366pub struct RQCP0_W<'a> {
367 w: &'a mut W, 367 w: &'a mut W,
diff --git a/embassy-stm32/src/can/bx/pac/can/tx.rs b/embassy-stm32/src/can/bx/pac/can/tx.rs
index 7b926bd14..f45eb47cc 100644
--- a/embassy-stm32/src/can/bx/pac/can/tx.rs
+++ b/embassy-stm32/src/can/bx/pac/can/tx.rs
@@ -1,44 +1,44 @@
1#[doc = "CAN_TI0R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tir](tir) module"] 1#[doc = "CAN_TI0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tir](tir) module"]
2pub type TIR = crate::Reg<u32, _TIR>; 2pub type TIR = crate::can::bx::Reg<u32, _TIR>;
3#[allow(missing_docs)] 3#[allow(missing_docs)]
4#[doc(hidden)] 4#[doc(hidden)]
5pub struct _TIR; 5pub struct _TIR;
6#[doc = "`read()` method returns [tir::R](tir::R) reader structure"] 6#[doc = "`read()` method returns [tir::R](tir::R) reader structure"]
7impl crate::Readable for TIR {} 7impl crate::can::bx::Readable for TIR {}
8#[doc = "`write(|w| ..)` method takes [tir::W](tir::W) writer structure"] 8#[doc = "`write(|w| ..)` method takes [tir::W](tir::W) writer structure"]
9impl crate::Writable for TIR {} 9impl crate::can::bx::Writable for TIR {}
10#[doc = "CAN_TI0R"] 10#[doc = "CAN_TI0R"]
11pub mod tir; 11pub mod tir;
12#[doc = "CAN_TDT0R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tdtr](tdtr) module"] 12#[doc = "CAN_TDT0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tdtr](tdtr) module"]
13pub type TDTR = crate::Reg<u32, _TDTR>; 13pub type TDTR = crate::can::bx::Reg<u32, _TDTR>;
14#[allow(missing_docs)] 14#[allow(missing_docs)]
15#[doc(hidden)] 15#[doc(hidden)]
16pub struct _TDTR; 16pub struct _TDTR;
17#[doc = "`read()` method returns [tdtr::R](tdtr::R) reader structure"] 17#[doc = "`read()` method returns [tdtr::R](tdtr::R) reader structure"]
18impl crate::Readable for TDTR {} 18impl crate::can::bx::Readable for TDTR {}
19#[doc = "`write(|w| ..)` method takes [tdtr::W](tdtr::W) writer structure"] 19#[doc = "`write(|w| ..)` method takes [tdtr::W](tdtr::W) writer structure"]
20impl crate::Writable for TDTR {} 20impl crate::can::bx::Writable for TDTR {}
21#[doc = "CAN_TDT0R"] 21#[doc = "CAN_TDT0R"]
22pub mod tdtr; 22pub mod tdtr;
23#[doc = "CAN_TDL0R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tdlr](tdlr) module"] 23#[doc = "CAN_TDL0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tdlr](tdlr) module"]
24pub type TDLR = crate::Reg<u32, _TDLR>; 24pub type TDLR = crate::can::bx::Reg<u32, _TDLR>;
25#[allow(missing_docs)] 25#[allow(missing_docs)]
26#[doc(hidden)] 26#[doc(hidden)]
27pub struct _TDLR; 27pub struct _TDLR;
28#[doc = "`read()` method returns [tdlr::R](tdlr::R) reader structure"] 28#[doc = "`read()` method returns [tdlr::R](tdlr::R) reader structure"]
29impl crate::Readable for TDLR {} 29impl crate::can::bx::Readable for TDLR {}
30#[doc = "`write(|w| ..)` method takes [tdlr::W](tdlr::W) writer structure"] 30#[doc = "`write(|w| ..)` method takes [tdlr::W](tdlr::W) writer structure"]
31impl crate::Writable for TDLR {} 31impl crate::can::bx::Writable for TDLR {}
32#[doc = "CAN_TDL0R"] 32#[doc = "CAN_TDL0R"]
33pub mod tdlr; 33pub mod tdlr;
34#[doc = "CAN_TDH0R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tdhr](tdhr) module"] 34#[doc = "CAN_TDH0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tdhr](tdhr) module"]
35pub type TDHR = crate::Reg<u32, _TDHR>; 35pub type TDHR = crate::can::bx::Reg<u32, _TDHR>;
36#[allow(missing_docs)] 36#[allow(missing_docs)]
37#[doc(hidden)] 37#[doc(hidden)]
38pub struct _TDHR; 38pub struct _TDHR;
39#[doc = "`read()` method returns [tdhr::R](tdhr::R) reader structure"] 39#[doc = "`read()` method returns [tdhr::R](tdhr::R) reader structure"]
40impl crate::Readable for TDHR {} 40impl crate::can::bx::Readable for TDHR {}
41#[doc = "`write(|w| ..)` method takes [tdhr::W](tdhr::W) writer structure"] 41#[doc = "`write(|w| ..)` method takes [tdhr::W](tdhr::W) writer structure"]
42impl crate::Writable for TDHR {} 42impl crate::can::bx::Writable for TDHR {}
43#[doc = "CAN_TDH0R"] 43#[doc = "CAN_TDH0R"]
44pub mod tdhr; 44pub mod tdhr;
diff --git a/embassy-stm32/src/can/bx/pac/can/tx/tdhr.rs b/embassy-stm32/src/can/bx/pac/can/tx/tdhr.rs
index 240fa94f0..9c2209b99 100644
--- a/embassy-stm32/src/can/bx/pac/can/tx/tdhr.rs
+++ b/embassy-stm32/src/can/bx/pac/can/tx/tdhr.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register TDHR"] 1#[doc = "Reader of register TDHR"]
2pub type R = crate::R<u32, super::TDHR>; 2pub type R = crate::can::bx::R<u32, super::TDHR>;
3#[doc = "Writer for register TDHR"] 3#[doc = "Writer for register TDHR"]
4pub type W = crate::W<u32, super::TDHR>; 4pub type W = crate::can::bx::W<u32, super::TDHR>;
5#[doc = "Register TDHR `reset()`'s with value 0"] 5#[doc = "Register TDHR `reset()`'s with value 0"]
6impl crate::ResetValue for super::TDHR { 6impl crate::can::bx::ResetValue for super::TDHR {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -11,7 +11,7 @@ impl crate::ResetValue for super::TDHR {
11 } 11 }
12} 12}
13#[doc = "Reader of field `DATA7`"] 13#[doc = "Reader of field `DATA7`"]
14pub type DATA7_R = crate::R<u8, u8>; 14pub type DATA7_R = crate::can::bx::R<u8, u8>;
15#[doc = "Write proxy for field `DATA7`"] 15#[doc = "Write proxy for field `DATA7`"]
16pub struct DATA7_W<'a> { 16pub struct DATA7_W<'a> {
17 w: &'a mut W, 17 w: &'a mut W,
@@ -25,7 +25,7 @@ impl<'a> DATA7_W<'a> {
25 } 25 }
26} 26}
27#[doc = "Reader of field `DATA6`"] 27#[doc = "Reader of field `DATA6`"]
28pub type DATA6_R = crate::R<u8, u8>; 28pub type DATA6_R = crate::can::bx::R<u8, u8>;
29#[doc = "Write proxy for field `DATA6`"] 29#[doc = "Write proxy for field `DATA6`"]
30pub struct DATA6_W<'a> { 30pub struct DATA6_W<'a> {
31 w: &'a mut W, 31 w: &'a mut W,
@@ -39,7 +39,7 @@ impl<'a> DATA6_W<'a> {
39 } 39 }
40} 40}
41#[doc = "Reader of field `DATA5`"] 41#[doc = "Reader of field `DATA5`"]
42pub type DATA5_R = crate::R<u8, u8>; 42pub type DATA5_R = crate::can::bx::R<u8, u8>;
43#[doc = "Write proxy for field `DATA5`"] 43#[doc = "Write proxy for field `DATA5`"]
44pub struct DATA5_W<'a> { 44pub struct DATA5_W<'a> {
45 w: &'a mut W, 45 w: &'a mut W,
@@ -53,7 +53,7 @@ impl<'a> DATA5_W<'a> {
53 } 53 }
54} 54}
55#[doc = "Reader of field `DATA4`"] 55#[doc = "Reader of field `DATA4`"]
56pub type DATA4_R = crate::R<u8, u8>; 56pub type DATA4_R = crate::can::bx::R<u8, u8>;
57#[doc = "Write proxy for field `DATA4`"] 57#[doc = "Write proxy for field `DATA4`"]
58pub struct DATA4_W<'a> { 58pub struct DATA4_W<'a> {
59 w: &'a mut W, 59 w: &'a mut W,
diff --git a/embassy-stm32/src/can/bx/pac/can/tx/tdlr.rs b/embassy-stm32/src/can/bx/pac/can/tx/tdlr.rs
index c4c855d46..d67589f99 100644
--- a/embassy-stm32/src/can/bx/pac/can/tx/tdlr.rs
+++ b/embassy-stm32/src/can/bx/pac/can/tx/tdlr.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register TDLR"] 1#[doc = "Reader of register TDLR"]
2pub type R = crate::R<u32, super::TDLR>; 2pub type R = crate::can::bx::R<u32, super::TDLR>;
3#[doc = "Writer for register TDLR"] 3#[doc = "Writer for register TDLR"]
4pub type W = crate::W<u32, super::TDLR>; 4pub type W = crate::can::bx::W<u32, super::TDLR>;
5#[doc = "Register TDLR `reset()`'s with value 0"] 5#[doc = "Register TDLR `reset()`'s with value 0"]
6impl crate::ResetValue for super::TDLR { 6impl crate::can::bx::ResetValue for super::TDLR {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -11,7 +11,7 @@ impl crate::ResetValue for super::TDLR {
11 } 11 }
12} 12}
13#[doc = "Reader of field `DATA3`"] 13#[doc = "Reader of field `DATA3`"]
14pub type DATA3_R = crate::R<u8, u8>; 14pub type DATA3_R = crate::can::bx::R<u8, u8>;
15#[doc = "Write proxy for field `DATA3`"] 15#[doc = "Write proxy for field `DATA3`"]
16pub struct DATA3_W<'a> { 16pub struct DATA3_W<'a> {
17 w: &'a mut W, 17 w: &'a mut W,
@@ -25,7 +25,7 @@ impl<'a> DATA3_W<'a> {
25 } 25 }
26} 26}
27#[doc = "Reader of field `DATA2`"] 27#[doc = "Reader of field `DATA2`"]
28pub type DATA2_R = crate::R<u8, u8>; 28pub type DATA2_R = crate::can::bx::R<u8, u8>;
29#[doc = "Write proxy for field `DATA2`"] 29#[doc = "Write proxy for field `DATA2`"]
30pub struct DATA2_W<'a> { 30pub struct DATA2_W<'a> {
31 w: &'a mut W, 31 w: &'a mut W,
@@ -39,7 +39,7 @@ impl<'a> DATA2_W<'a> {
39 } 39 }
40} 40}
41#[doc = "Reader of field `DATA1`"] 41#[doc = "Reader of field `DATA1`"]
42pub type DATA1_R = crate::R<u8, u8>; 42pub type DATA1_R = crate::can::bx::R<u8, u8>;
43#[doc = "Write proxy for field `DATA1`"] 43#[doc = "Write proxy for field `DATA1`"]
44pub struct DATA1_W<'a> { 44pub struct DATA1_W<'a> {
45 w: &'a mut W, 45 w: &'a mut W,
@@ -53,7 +53,7 @@ impl<'a> DATA1_W<'a> {
53 } 53 }
54} 54}
55#[doc = "Reader of field `DATA0`"] 55#[doc = "Reader of field `DATA0`"]
56pub type DATA0_R = crate::R<u8, u8>; 56pub type DATA0_R = crate::can::bx::R<u8, u8>;
57#[doc = "Write proxy for field `DATA0`"] 57#[doc = "Write proxy for field `DATA0`"]
58pub struct DATA0_W<'a> { 58pub struct DATA0_W<'a> {
59 w: &'a mut W, 59 w: &'a mut W,
diff --git a/embassy-stm32/src/can/bx/pac/can/tx/tdtr.rs b/embassy-stm32/src/can/bx/pac/can/tx/tdtr.rs
index 310bca497..cf748ba29 100644
--- a/embassy-stm32/src/can/bx/pac/can/tx/tdtr.rs
+++ b/embassy-stm32/src/can/bx/pac/can/tx/tdtr.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register TDTR"] 1#[doc = "Reader of register TDTR"]
2pub type R = crate::R<u32, super::TDTR>; 2pub type R = crate::can::bx::R<u32, super::TDTR>;
3#[doc = "Writer for register TDTR"] 3#[doc = "Writer for register TDTR"]
4pub type W = crate::W<u32, super::TDTR>; 4pub type W = crate::can::bx::W<u32, super::TDTR>;
5#[doc = "Register TDTR `reset()`'s with value 0"] 5#[doc = "Register TDTR `reset()`'s with value 0"]
6impl crate::ResetValue for super::TDTR { 6impl crate::can::bx::ResetValue for super::TDTR {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -11,7 +11,7 @@ impl crate::ResetValue for super::TDTR {
11 } 11 }
12} 12}
13#[doc = "Reader of field `TIME`"] 13#[doc = "Reader of field `TIME`"]
14pub type TIME_R = crate::R<u16, u16>; 14pub type TIME_R = crate::can::bx::R<u16, u16>;
15#[doc = "Write proxy for field `TIME`"] 15#[doc = "Write proxy for field `TIME`"]
16pub struct TIME_W<'a> { 16pub struct TIME_W<'a> {
17 w: &'a mut W, 17 w: &'a mut W,
@@ -25,7 +25,7 @@ impl<'a> TIME_W<'a> {
25 } 25 }
26} 26}
27#[doc = "Reader of field `TGT`"] 27#[doc = "Reader of field `TGT`"]
28pub type TGT_R = crate::R<bool, bool>; 28pub type TGT_R = crate::can::bx::R<bool, bool>;
29#[doc = "Write proxy for field `TGT`"] 29#[doc = "Write proxy for field `TGT`"]
30pub struct TGT_W<'a> { 30pub struct TGT_W<'a> {
31 w: &'a mut W, 31 w: &'a mut W,
@@ -49,7 +49,7 @@ impl<'a> TGT_W<'a> {
49 } 49 }
50} 50}
51#[doc = "Reader of field `DLC`"] 51#[doc = "Reader of field `DLC`"]
52pub type DLC_R = crate::R<u8, u8>; 52pub type DLC_R = crate::can::bx::R<u8, u8>;
53#[doc = "Write proxy for field `DLC`"] 53#[doc = "Write proxy for field `DLC`"]
54pub struct DLC_W<'a> { 54pub struct DLC_W<'a> {
55 w: &'a mut W, 55 w: &'a mut W,
diff --git a/embassy-stm32/src/can/bx/pac/can/tx/tir.rs b/embassy-stm32/src/can/bx/pac/can/tx/tir.rs
index 12bc3d1f3..2d2dd0ca7 100644
--- a/embassy-stm32/src/can/bx/pac/can/tx/tir.rs
+++ b/embassy-stm32/src/can/bx/pac/can/tx/tir.rs
@@ -1,9 +1,9 @@
1#[doc = "Reader of register TIR"] 1#[doc = "Reader of register TIR"]
2pub type R = crate::R<u32, super::TIR>; 2pub type R = crate::can::bx::R<u32, super::TIR>;
3#[doc = "Writer for register TIR"] 3#[doc = "Writer for register TIR"]
4pub type W = crate::W<u32, super::TIR>; 4pub type W = crate::can::bx::W<u32, super::TIR>;
5#[doc = "Register TIR `reset()`'s with value 0"] 5#[doc = "Register TIR `reset()`'s with value 0"]
6impl crate::ResetValue for super::TIR { 6impl crate::can::bx::ResetValue for super::TIR {
7 type Type = u32; 7 type Type = u32;
8 #[inline(always)] 8 #[inline(always)]
9 fn reset_value() -> Self::Type { 9 fn reset_value() -> Self::Type {
@@ -11,7 +11,7 @@ impl crate::ResetValue for super::TIR {
11 } 11 }
12} 12}
13#[doc = "Reader of field `STID`"] 13#[doc = "Reader of field `STID`"]
14pub type STID_R = crate::R<u16, u16>; 14pub type STID_R = crate::can::bx::R<u16, u16>;
15#[doc = "Write proxy for field `STID`"] 15#[doc = "Write proxy for field `STID`"]
16pub struct STID_W<'a> { 16pub struct STID_W<'a> {
17 w: &'a mut W, 17 w: &'a mut W,
@@ -25,7 +25,7 @@ impl<'a> STID_W<'a> {
25 } 25 }
26} 26}
27#[doc = "Reader of field `EXID`"] 27#[doc = "Reader of field `EXID`"]
28pub type EXID_R = crate::R<u32, u32>; 28pub type EXID_R = crate::can::bx::R<u32, u32>;
29#[doc = "Write proxy for field `EXID`"] 29#[doc = "Write proxy for field `EXID`"]
30pub struct EXID_W<'a> { 30pub struct EXID_W<'a> {
31 w: &'a mut W, 31 w: &'a mut W,
@@ -53,7 +53,7 @@ impl From<IDE_A> for bool {
53 } 53 }
54} 54}
55#[doc = "Reader of field `IDE`"] 55#[doc = "Reader of field `IDE`"]
56pub type IDE_R = crate::R<bool, IDE_A>; 56pub type IDE_R = crate::can::bx::R<bool, IDE_A>;
57impl IDE_R { 57impl IDE_R {
58 #[doc = r"Get enumerated values variant"] 58 #[doc = r"Get enumerated values variant"]
59 #[inline(always)] 59 #[inline(always)]
@@ -128,7 +128,7 @@ impl From<RTR_A> for bool {
128 } 128 }
129} 129}
130#[doc = "Reader of field `RTR`"] 130#[doc = "Reader of field `RTR`"]
131pub type RTR_R = crate::R<bool, RTR_A>; 131pub type RTR_R = crate::can::bx::R<bool, RTR_A>;
132impl RTR_R { 132impl RTR_R {
133 #[doc = r"Get enumerated values variant"] 133 #[doc = r"Get enumerated values variant"]
134 #[inline(always)] 134 #[inline(always)]
@@ -189,7 +189,7 @@ impl<'a> RTR_W<'a> {
189 } 189 }
190} 190}
191#[doc = "Reader of field `TXRQ`"] 191#[doc = "Reader of field `TXRQ`"]
192pub type TXRQ_R = crate::R<bool, bool>; 192pub type TXRQ_R = crate::can::bx::R<bool, bool>;
193#[doc = "Write proxy for field `TXRQ`"] 193#[doc = "Write proxy for field `TXRQ`"]
194pub struct TXRQ_W<'a> { 194pub struct TXRQ_W<'a> {
195 w: &'a mut W, 195 w: &'a mut W,
diff --git a/embassy-stm32/src/can/bxcan.rs b/embassy-stm32/src/can/bxcan.rs
index 7e00eca6f..cd394c951 100644
--- a/embassy-stm32/src/can/bxcan.rs
+++ b/embassy-stm32/src/can/bxcan.rs
@@ -4,8 +4,9 @@ use core::marker::PhantomData;
4use core::ops::{Deref, DerefMut}; 4use core::ops::{Deref, DerefMut};
5use core::task::Poll; 5use core::task::Poll;
6 6
7pub use bxcan; 7pub mod bx;
8use bxcan::{Data, ExtendedId, Frame, Id, StandardId}; 8
9use bx::{Data, ExtendedId, Frame, Id, StandardId};
9use embassy_hal_internal::{into_ref, PeripheralRef}; 10use embassy_hal_internal::{into_ref, PeripheralRef};
10use futures::FutureExt; 11use futures::FutureExt;
11 12
@@ -29,7 +30,7 @@ pub struct Envelope {
29 #[cfg(feature = "time")] 30 #[cfg(feature = "time")]
30 pub ts: embassy_time::Instant, 31 pub ts: embassy_time::Instant,
31 /// The actual CAN frame. 32 /// The actual CAN frame.
32 pub frame: bxcan::Frame, 33 pub frame: crate::can::bx::Frame,
33} 34}
34 35
35/// Interrupt handler. 36/// Interrupt handler.
@@ -93,7 +94,7 @@ impl<T: Instance> interrupt::typelevel::Handler<T::SCEInterrupt> for SceInterrup
93 94
94/// CAN driver 95/// CAN driver
95pub struct Can<'d, T: Instance> { 96pub struct Can<'d, T: Instance> {
96 can: bxcan::Can<BxcanInstance<'d, T>>, 97 can: crate::can::bx::Can<BxcanInstance<'d, T>>,
97} 98}
98 99
99/// Error returned by `try_read` 100/// Error returned by `try_read`
@@ -166,7 +167,7 @@ impl<'d, T: Instance> Can<'d, T> {
166 rx.set_as_af(rx.af_num(), AFType::Input); 167 rx.set_as_af(rx.af_num(), AFType::Input);
167 tx.set_as_af(tx.af_num(), AFType::OutputPushPull); 168 tx.set_as_af(tx.af_num(), AFType::OutputPushPull);
168 169
169 let can = bxcan::Can::builder(BxcanInstance(peri)).leave_disabled(); 170 let can = crate::can::bx::Can::builder(BxcanInstance(peri)).leave_disabled();
170 Self { can } 171 Self { can }
171 } 172 }
172 173
@@ -198,19 +199,19 @@ impl<'d, T: Instance> Can<'d, T> {
198 /// Queues the message to be sent. 199 /// Queues the message to be sent.
199 /// 200 ///
200 /// If the TX queue is full, this will wait until there is space, therefore exerting backpressure. 201 /// If the TX queue is full, this will wait until there is space, therefore exerting backpressure.
201 pub async fn write(&mut self, frame: &Frame) -> bxcan::TransmitStatus { 202 pub async fn write(&mut self, frame: &Frame) -> crate::can::bx::TransmitStatus {
202 self.split().0.write(frame).await 203 self.split().0.write(frame).await
203 } 204 }
204 205
205 /// Attempts to transmit a frame without blocking. 206 /// Attempts to transmit a frame without blocking.
206 /// 207 ///
207 /// Returns [Err(TryWriteError::Full)] if all transmit mailboxes are full. 208 /// Returns [Err(TryWriteError::Full)] if all transmit mailboxes are full.
208 pub fn try_write(&mut self, frame: &Frame) -> Result<bxcan::TransmitStatus, TryWriteError> { 209 pub fn try_write(&mut self, frame: &Frame) -> Result<crate::can::bx::TransmitStatus, TryWriteError> {
209 self.split().0.try_write(frame) 210 self.split().0.try_write(frame)
210 } 211 }
211 212
212 /// Waits for a specific transmit mailbox to become empty 213 /// Waits for a specific transmit mailbox to become empty
213 pub async fn flush(&self, mb: bxcan::Mailbox) { 214 pub async fn flush(&self, mb: crate::can::bx::Mailbox) {
214 CanTx::<T>::flush_inner(mb).await 215 CanTx::<T>::flush_inner(mb).await
215 } 216 }
216 217
@@ -304,23 +305,23 @@ impl<'d, T: Instance> Can<'d, T> {
304 } 305 }
305} 306}
306 307
307impl<'d, T: Instance> AsMut<bxcan::Can<BxcanInstance<'d, T>>> for Can<'d, T> { 308impl<'d, T: Instance> AsMut<crate::can::bx::Can<BxcanInstance<'d, T>>> for Can<'d, T> {
308 /// Get mutable access to the lower-level driver from the `bxcan` crate. 309 /// Get mutable access to the lower-level driver from the `bxcan` crate.
309 fn as_mut(&mut self) -> &mut bxcan::Can<BxcanInstance<'d, T>> { 310 fn as_mut(&mut self) -> &mut crate::can::bx::Can<BxcanInstance<'d, T>> {
310 &mut self.can 311 &mut self.can
311 } 312 }
312} 313}
313 314
314/// CAN driver, transmit half. 315/// CAN driver, transmit half.
315pub struct CanTx<'c, 'd, T: Instance> { 316pub struct CanTx<'c, 'd, T: Instance> {
316 tx: &'c mut bxcan::Tx<BxcanInstance<'d, T>>, 317 tx: &'c mut crate::can::bx::Tx<BxcanInstance<'d, T>>,
317} 318}
318 319
319impl<'c, 'd, T: Instance> CanTx<'c, 'd, T> { 320impl<'c, 'd, T: Instance> CanTx<'c, 'd, T> {
320 /// Queues the message to be sent. 321 /// Queues the message to be sent.
321 /// 322 ///
322 /// If the TX queue is full, this will wait until there is space, therefore exerting backpressure. 323 /// If the TX queue is full, this will wait until there is space, therefore exerting backpressure.
323 pub async fn write(&mut self, frame: &Frame) -> bxcan::TransmitStatus { 324 pub async fn write(&mut self, frame: &Frame) -> crate::can::bx::TransmitStatus {
324 poll_fn(|cx| { 325 poll_fn(|cx| {
325 T::state().tx_waker.register(cx.waker()); 326 T::state().tx_waker.register(cx.waker());
326 if let Ok(status) = self.tx.transmit(frame) { 327 if let Ok(status) = self.tx.transmit(frame) {
@@ -335,11 +336,11 @@ impl<'c, 'd, T: Instance> CanTx<'c, 'd, T> {
335 /// Attempts to transmit a frame without blocking. 336 /// Attempts to transmit a frame without blocking.
336 /// 337 ///
337 /// Returns [Err(TryWriteError::Full)] if all transmit mailboxes are full. 338 /// Returns [Err(TryWriteError::Full)] if all transmit mailboxes are full.
338 pub fn try_write(&mut self, frame: &Frame) -> Result<bxcan::TransmitStatus, TryWriteError> { 339 pub fn try_write(&mut self, frame: &Frame) -> Result<crate::can::bx::TransmitStatus, TryWriteError> {
339 self.tx.transmit(frame).map_err(|_| TryWriteError::Full) 340 self.tx.transmit(frame).map_err(|_| TryWriteError::Full)
340 } 341 }
341 342
342 async fn flush_inner(mb: bxcan::Mailbox) { 343 async fn flush_inner(mb: crate::can::bx::Mailbox) {
343 poll_fn(|cx| { 344 poll_fn(|cx| {
344 T::state().tx_waker.register(cx.waker()); 345 T::state().tx_waker.register(cx.waker());
345 if T::regs().tsr().read().tme(mb.index()) { 346 if T::regs().tsr().read().tme(mb.index()) {
@@ -352,7 +353,7 @@ impl<'c, 'd, T: Instance> CanTx<'c, 'd, T> {
352 } 353 }
353 354
354 /// Waits for a specific transmit mailbox to become empty 355 /// Waits for a specific transmit mailbox to become empty
355 pub async fn flush(&self, mb: bxcan::Mailbox) { 356 pub async fn flush(&self, mb: crate::can::bx::Mailbox) {
356 Self::flush_inner(mb).await 357 Self::flush_inner(mb).await
357 } 358 }
358 359
@@ -361,9 +362,9 @@ impl<'c, 'd, T: Instance> CanTx<'c, 'd, T> {
361 T::state().tx_waker.register(cx.waker()); 362 T::state().tx_waker.register(cx.waker());
362 363
363 let tsr = T::regs().tsr().read(); 364 let tsr = T::regs().tsr().read();
364 if tsr.tme(bxcan::Mailbox::Mailbox0.index()) 365 if tsr.tme(crate::can::bx::Mailbox::Mailbox0.index())
365 || tsr.tme(bxcan::Mailbox::Mailbox1.index()) 366 || tsr.tme(crate::can::bx::Mailbox::Mailbox1.index())
366 || tsr.tme(bxcan::Mailbox::Mailbox2.index()) 367 || tsr.tme(crate::can::bx::Mailbox::Mailbox2.index())
367 { 368 {
368 return Poll::Ready(()); 369 return Poll::Ready(());
369 } 370 }
@@ -383,9 +384,9 @@ impl<'c, 'd, T: Instance> CanTx<'c, 'd, T> {
383 T::state().tx_waker.register(cx.waker()); 384 T::state().tx_waker.register(cx.waker());
384 385
385 let tsr = T::regs().tsr().read(); 386 let tsr = T::regs().tsr().read();
386 if tsr.tme(bxcan::Mailbox::Mailbox0.index()) 387 if tsr.tme(crate::can::bx::Mailbox::Mailbox0.index())
387 && tsr.tme(bxcan::Mailbox::Mailbox1.index()) 388 && tsr.tme(crate::can::bx::Mailbox::Mailbox1.index())
388 && tsr.tme(bxcan::Mailbox::Mailbox2.index()) 389 && tsr.tme(crate::can::bx::Mailbox::Mailbox2.index())
389 { 390 {
390 return Poll::Ready(()); 391 return Poll::Ready(());
391 } 392 }
@@ -404,8 +405,8 @@ impl<'c, 'd, T: Instance> CanTx<'c, 'd, T> {
404/// CAN driver, receive half. 405/// CAN driver, receive half.
405#[allow(dead_code)] 406#[allow(dead_code)]
406pub struct CanRx<'c, 'd, T: Instance> { 407pub struct CanRx<'c, 'd, T: Instance> {
407 rx0: &'c mut bxcan::Rx0<BxcanInstance<'d, T>>, 408 rx0: &'c mut crate::can::bx::Rx0<BxcanInstance<'d, T>>,
408 rx1: &'c mut bxcan::Rx1<BxcanInstance<'d, T>>, 409 rx1: &'c mut crate::can::bx::Rx1<BxcanInstance<'d, T>>,
409} 410}
410 411
411impl<'c, 'd, T: Instance> CanRx<'c, 'd, T> { 412impl<'c, 'd, T: Instance> CanRx<'c, 'd, T> {
@@ -478,7 +479,7 @@ impl<'d, T: Instance> Drop for Can<'d, T> {
478} 479}
479 480
480impl<'d, T: Instance> Deref for Can<'d, T> { 481impl<'d, T: Instance> Deref for Can<'d, T> {
481 type Target = bxcan::Can<BxcanInstance<'d, T>>; 482 type Target = crate::can::bx::Can<BxcanInstance<'d, T>>;
482 483
483 fn deref(&self) -> &Self::Target { 484 fn deref(&self) -> &Self::Target {
484 &self.can 485 &self.can
@@ -515,7 +516,7 @@ pub(crate) mod sealed {
515 } 516 }
516 517
517 pub trait Instance { 518 pub trait Instance {
518 const REGISTERS: *mut bxcan::RegisterBlock; 519 const REGISTERS: *mut crate::can::bx::RegisterBlock;
519 520
520 fn regs() -> crate::pac::can::Can; 521 fn regs() -> crate::pac::can::Can;
521 fn state() -> &'static State; 522 fn state() -> &'static State;
@@ -537,14 +538,14 @@ pub trait Instance: sealed::Instance + RccPeripheral + 'static {
537/// BXCAN instance newtype. 538/// BXCAN instance newtype.
538pub struct BxcanInstance<'a, T>(PeripheralRef<'a, T>); 539pub struct BxcanInstance<'a, T>(PeripheralRef<'a, T>);
539 540
540unsafe impl<'d, T: Instance> bxcan::Instance for BxcanInstance<'d, T> { 541unsafe impl<'d, T: Instance> crate::can::bx::Instance for BxcanInstance<'d, T> {
541 const REGISTERS: *mut bxcan::RegisterBlock = T::REGISTERS; 542 const REGISTERS: *mut crate::can::bx::RegisterBlock = T::REGISTERS;
542} 543}
543 544
544foreach_peripheral!( 545foreach_peripheral!(
545 (can, $inst:ident) => { 546 (can, $inst:ident) => {
546 impl sealed::Instance for peripherals::$inst { 547 impl sealed::Instance for peripherals::$inst {
547 const REGISTERS: *mut bxcan::RegisterBlock = crate::pac::$inst.as_ptr() as *mut _; 548 const REGISTERS: *mut crate::can::bx::RegisterBlock = crate::pac::$inst.as_ptr() as *mut _;
548 549
549 fn regs() -> crate::pac::can::Can { 550 fn regs() -> crate::pac::can::Can {
550 crate::pac::$inst 551 crate::pac::$inst
@@ -567,7 +568,7 @@ foreach_peripheral!(
567 568
568foreach_peripheral!( 569foreach_peripheral!(
569 (can, CAN) => { 570 (can, CAN) => {
570 unsafe impl<'d> bxcan::FilterOwner for BxcanInstance<'d, peripherals::CAN> { 571 unsafe impl<'d> crate::can::bx::FilterOwner for BxcanInstance<'d, peripherals::CAN> {
571 const NUM_FILTER_BANKS: u8 = 14; 572 const NUM_FILTER_BANKS: u8 = 14;
572 } 573 }
573 }; 574 };
@@ -582,19 +583,19 @@ foreach_peripheral!(
582 ))] { 583 ))] {
583 // Most L4 devices and some F7 devices use the name "CAN1" 584 // Most L4 devices and some F7 devices use the name "CAN1"
584 // even if there is no "CAN2" peripheral. 585 // even if there is no "CAN2" peripheral.
585 unsafe impl<'d> bxcan::FilterOwner for BxcanInstance<'d, peripherals::CAN1> { 586 unsafe impl<'d> crate::can::bx::FilterOwner for BxcanInstance<'d, peripherals::CAN1> {
586 const NUM_FILTER_BANKS: u8 = 14; 587 const NUM_FILTER_BANKS: u8 = 14;
587 } 588 }
588 } else { 589 } else {
589 unsafe impl<'d> bxcan::FilterOwner for BxcanInstance<'d, peripherals::CAN1> { 590 unsafe impl<'d> crate::can::bx::FilterOwner for BxcanInstance<'d, peripherals::CAN1> {
590 const NUM_FILTER_BANKS: u8 = 28; 591 const NUM_FILTER_BANKS: u8 = 28;
591 } 592 }
592 unsafe impl<'d> bxcan::MasterInstance for BxcanInstance<'d, peripherals::CAN1> {} 593 unsafe impl<'d> crate::can::bx::MasterInstance for BxcanInstance<'d, peripherals::CAN1> {}
593 } 594 }
594 } 595 }
595 }; 596 };
596 (can, CAN3) => { 597 (can, CAN3) => {
597 unsafe impl<'d> bxcan::FilterOwner for BxcanInstance<'d, peripherals::CAN3> { 598 unsafe impl<'d> crate::can::bx::FilterOwner for BxcanInstance<'d, peripherals::CAN3> {
598 const NUM_FILTER_BANKS: u8 = 14; 599 const NUM_FILTER_BANKS: u8 = 14;
599 } 600 }
600 }; 601 };
@@ -607,12 +608,12 @@ trait Index {
607 fn index(&self) -> usize; 608 fn index(&self) -> usize;
608} 609}
609 610
610impl Index for bxcan::Mailbox { 611impl Index for crate::can::bx::Mailbox {
611 fn index(&self) -> usize { 612 fn index(&self) -> usize {
612 match self { 613 match self {
613 bxcan::Mailbox::Mailbox0 => 0, 614 crate::can::bx::Mailbox::Mailbox0 => 0,
614 bxcan::Mailbox::Mailbox1 => 1, 615 crate::can::bx::Mailbox::Mailbox1 => 1,
615 bxcan::Mailbox::Mailbox2 => 2, 616 crate::can::bx::Mailbox::Mailbox2 => 2,
616 } 617 }
617 } 618 }
618} 619}
diff --git a/examples/stm32f1/src/bin/can.rs b/examples/stm32f1/src/bin/can.rs
index c1c4f8359..176fc888f 100644
--- a/examples/stm32f1/src/bin/can.rs
+++ b/examples/stm32f1/src/bin/can.rs
@@ -3,8 +3,8 @@
3 3
4use defmt::*; 4use defmt::*;
5use embassy_executor::Spawner; 5use embassy_executor::Spawner;
6use embassy_stm32::can::bxcan::filter::Mask32; 6use embassy_stm32::can::bx::filter::Mask32;
7use embassy_stm32::can::bxcan::{Fifo, Frame, Id, StandardId}; 7use embassy_stm32::can::bx::{Fifo, Frame, Id, StandardId};
8use embassy_stm32::can::{Can, Rx0InterruptHandler, Rx1InterruptHandler, SceInterruptHandler, TxInterruptHandler}; 8use embassy_stm32::can::{Can, Rx0InterruptHandler, Rx1InterruptHandler, SceInterruptHandler, TxInterruptHandler};
9use embassy_stm32::peripherals::CAN; 9use embassy_stm32::peripherals::CAN;
10use embassy_stm32::{bind_interrupts, Config}; 10use embassy_stm32::{bind_interrupts, Config};
diff --git a/tests/stm32/src/bin/can.rs b/tests/stm32/src/bin/can.rs
index f4effa244..e869e8fb9 100644
--- a/tests/stm32/src/bin/can.rs
+++ b/tests/stm32/src/bin/can.rs
@@ -9,8 +9,8 @@ use common::*;
9use defmt::assert; 9use defmt::assert;
10use embassy_executor::Spawner; 10use embassy_executor::Spawner;
11use embassy_stm32::bind_interrupts; 11use embassy_stm32::bind_interrupts;
12use embassy_stm32::can::bxcan::filter::Mask32; 12use embassy_stm32::can::bx::filter::Mask32;
13use embassy_stm32::can::bxcan::{Fifo, Frame, StandardId}; 13use embassy_stm32::can::bx::{Fifo, Frame, StandardId};
14use embassy_stm32::can::{Can, Rx0InterruptHandler, Rx1InterruptHandler, SceInterruptHandler, TxInterruptHandler}; 14use embassy_stm32::can::{Can, Rx0InterruptHandler, Rx1InterruptHandler, SceInterruptHandler, TxInterruptHandler};
15use embassy_stm32::gpio::{Input, Pull}; 15use embassy_stm32::gpio::{Input, Pull};
16use embassy_stm32::peripherals::CAN1; 16use embassy_stm32::peripherals::CAN1;