Skip to main content

mcxa_pac/trng0/
cser.rs

1#[doc = "Register `CSER` reader"]
2pub type R = crate::R<CserSpec>;
3#[doc = "Redundant Signals error/fault Detected\n\nValue on reset: 0"]
4#[cfg_attr(feature = "defmt", derive(defmt::Format))]
5#[derive(Clone, Copy, Debug, PartialEq, Eq)]
6pub enum RedSigs {
7    #[doc = "0: No redundant signal error/fault"]
8    RedSigsNoerr = 0,
9    #[doc = "1: Redundant signal error/fault detected."]
10    RedSigsErr = 1,
11}
12impl From<RedSigs> for bool {
13    #[inline(always)]
14    fn from(variant: RedSigs) -> Self {
15        variant as u8 != 0
16    }
17}
18#[doc = "Field `RED_SIGS` reader - Redundant Signals error/fault Detected"]
19pub type RedSigsR = crate::BitReader<RedSigs>;
20impl RedSigsR {
21    #[doc = "Get enumerated values variant"]
22    #[inline(always)]
23    pub const fn variant(&self) -> RedSigs {
24        match self.bits {
25            false => RedSigs::RedSigsNoerr,
26            true => RedSigs::RedSigsErr,
27        }
28    }
29    #[doc = "No redundant signal error/fault"]
30    #[inline(always)]
31    pub fn is_red_sigs_noerr(&self) -> bool {
32        *self == RedSigs::RedSigsNoerr
33    }
34    #[doc = "Redundant signal error/fault detected."]
35    #[inline(always)]
36    pub fn is_red_sigs_err(&self) -> bool {
37        *self == RedSigs::RedSigsErr
38    }
39}
40#[doc = "Redundant FSM error/fault detected\n\nValue on reset: 0"]
41#[cfg_attr(feature = "defmt", derive(defmt::Format))]
42#[derive(Clone, Copy, Debug, PartialEq, Eq)]
43pub enum RedFsm {
44    #[doc = "0: No redundant FSM error/fault"]
45    RedFsmNoerr = 0,
46    #[doc = "1: Redundant FSM error/fault detected."]
47    RedFsmErr = 1,
48}
49impl From<RedFsm> for bool {
50    #[inline(always)]
51    fn from(variant: RedFsm) -> Self {
52        variant as u8 != 0
53    }
54}
55#[doc = "Field `RED_FSM` reader - Redundant FSM error/fault detected"]
56pub type RedFsmR = crate::BitReader<RedFsm>;
57impl RedFsmR {
58    #[doc = "Get enumerated values variant"]
59    #[inline(always)]
60    pub const fn variant(&self) -> RedFsm {
61        match self.bits {
62            false => RedFsm::RedFsmNoerr,
63            true => RedFsm::RedFsmErr,
64        }
65    }
66    #[doc = "No redundant FSM error/fault"]
67    #[inline(always)]
68    pub fn is_red_fsm_noerr(&self) -> bool {
69        *self == RedFsm::RedFsmNoerr
70    }
71    #[doc = "Redundant FSM error/fault detected."]
72    #[inline(always)]
73    pub fn is_red_fsm_err(&self) -> bool {
74        *self == RedFsm::RedFsmErr
75    }
76}
77#[doc = "Local-EDC error/fault detected\n\nValue on reset: 0"]
78#[cfg_attr(feature = "defmt", derive(defmt::Format))]
79#[derive(Clone, Copy, Debug, PartialEq, Eq)]
80pub enum LocalEdc {
81    #[doc = "0: No Local-EDC error/fault detected."]
82    LocalEdcNoerr = 0,
83    #[doc = "1: Local-EDC error/fault detected."]
84    LocalEdcErr = 1,
85}
86impl From<LocalEdc> for bool {
87    #[inline(always)]
88    fn from(variant: LocalEdc) -> Self {
89        variant as u8 != 0
90    }
91}
92#[doc = "Field `LOCAL_EDC` reader - Local-EDC error/fault detected"]
93pub type LocalEdcR = crate::BitReader<LocalEdc>;
94impl LocalEdcR {
95    #[doc = "Get enumerated values variant"]
96    #[inline(always)]
97    pub const fn variant(&self) -> LocalEdc {
98        match self.bits {
99            false => LocalEdc::LocalEdcNoerr,
100            true => LocalEdc::LocalEdcErr,
101        }
102    }
103    #[doc = "No Local-EDC error/fault detected."]
104    #[inline(always)]
105    pub fn is_local_edc_noerr(&self) -> bool {
106        *self == LocalEdc::LocalEdcNoerr
107    }
108    #[doc = "Local-EDC error/fault detected."]
109    #[inline(always)]
110    pub fn is_local_edc_err(&self) -> bool {
111        *self == LocalEdc::LocalEdcErr
112    }
113}
114#[doc = "Bus-EDC error/fault detected\n\nValue on reset: 0"]
115#[cfg_attr(feature = "defmt", derive(defmt::Format))]
116#[derive(Clone, Copy, Debug, PartialEq, Eq)]
117pub enum BusEdc {
118    #[doc = "0: No Bus-EDC error/fault detected."]
119    BusEdcNoerr = 0,
120    #[doc = "1: Bus-EDC error/fault detected."]
121    BusEdcErr = 1,
122}
123impl From<BusEdc> for bool {
124    #[inline(always)]
125    fn from(variant: BusEdc) -> Self {
126        variant as u8 != 0
127    }
128}
129#[doc = "Field `BUS_EDC` reader - Bus-EDC error/fault detected"]
130pub type BusEdcR = crate::BitReader<BusEdc>;
131impl BusEdcR {
132    #[doc = "Get enumerated values variant"]
133    #[inline(always)]
134    pub const fn variant(&self) -> BusEdc {
135        match self.bits {
136            false => BusEdc::BusEdcNoerr,
137            true => BusEdc::BusEdcErr,
138        }
139    }
140    #[doc = "No Bus-EDC error/fault detected."]
141    #[inline(always)]
142    pub fn is_bus_edc_noerr(&self) -> bool {
143        *self == BusEdc::BusEdcNoerr
144    }
145    #[doc = "Bus-EDC error/fault detected."]
146    #[inline(always)]
147    pub fn is_bus_edc_err(&self) -> bool {
148        *self == BusEdc::BusEdcErr
149    }
150}
151impl R {
152    #[doc = "Bit 0 - Redundant Signals error/fault Detected"]
153    #[inline(always)]
154    pub fn red_sigs(&self) -> RedSigsR {
155        RedSigsR::new((self.bits & 1) != 0)
156    }
157    #[doc = "Bit 1 - Redundant FSM error/fault detected"]
158    #[inline(always)]
159    pub fn red_fsm(&self) -> RedFsmR {
160        RedFsmR::new(((self.bits >> 1) & 1) != 0)
161    }
162    #[doc = "Bit 2 - Local-EDC error/fault detected"]
163    #[inline(always)]
164    pub fn local_edc(&self) -> LocalEdcR {
165        LocalEdcR::new(((self.bits >> 2) & 1) != 0)
166    }
167    #[doc = "Bit 3 - Bus-EDC error/fault detected"]
168    #[inline(always)]
169    pub fn bus_edc(&self) -> BusEdcR {
170        BusEdcR::new(((self.bits >> 3) & 1) != 0)
171    }
172}
173#[cfg(feature = "debug")]
174impl core::fmt::Debug for R {
175    fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
176        f.debug_struct("CSER")
177            .field("red_sigs", &self.red_sigs())
178            .field("red_fsm", &self.red_fsm())
179            .field("local_edc", &self.local_edc())
180            .field("bus_edc", &self.bus_edc())
181            .finish()
182    }
183}
184#[doc = "Common Security Error Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cser::R`](R). See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
185pub struct CserSpec;
186impl crate::RegisterSpec for CserSpec {
187    type Ux = u32;
188}
189#[doc = "`read()` method returns [`cser::R`](R) reader structure"]
190impl crate::Readable for CserSpec {}
191#[doc = "`reset()` method sets CSER to value 0"]
192impl crate::Resettable for CserSpec {}