1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
#[doc = "Register `RD_REPEAT_ERR0` reader"]
pub type R = crate::R<RD_REPEAT_ERR0_SPEC>;
#[doc = "Field `RD_DIS_ERR` reader - Indicates a programming error of RD_DIS."]
pub type RD_DIS_ERR_R = crate::FieldReader;
#[doc = "Field `RPT4_RESERVED0_ERR_4` reader - Reserved."]
pub type RPT4_RESERVED0_ERR_4_R = crate::BitReader;
#[doc = "Field `DIS_ICACHE_ERR` reader - Indicates a programming error of DIS_ICACHE."]
pub type DIS_ICACHE_ERR_R = crate::BitReader;
#[doc = "Field `DIS_USB_JTAG_ERR` reader - Indicates a programming error of DIS_USB_JTAG."]
pub type DIS_USB_JTAG_ERR_R = crate::BitReader;
#[doc = "Field `POWERGLITCH_EN_ERR` reader - Indicates a programming error of POWERGLITCH_EN."]
pub type POWERGLITCH_EN_ERR_R = crate::BitReader;
#[doc = "Field `DIS_USB_SERIAL_JTAG_ERR` reader - Indicates a programming error of DIS_USB_DEVICE."]
pub type DIS_USB_SERIAL_JTAG_ERR_R = crate::BitReader;
#[doc = "Field `DIS_FORCE_DOWNLOAD_ERR` reader - Indicates a programming error of DIS_FORCE_DOWNLOAD."]
pub type DIS_FORCE_DOWNLOAD_ERR_R = crate::BitReader;
#[doc = "Field `SPI_DOWNLOAD_MSPI_DIS_ERR` reader - Indicates a programming error of SPI_DOWNLOAD_MSPI_DIS."]
pub type SPI_DOWNLOAD_MSPI_DIS_ERR_R = crate::BitReader;
#[doc = "Field `DIS_TWAI_ERR` reader - Indicates a programming error of DIS_CAN."]
pub type DIS_TWAI_ERR_R = crate::BitReader;
#[doc = "Field `JTAG_SEL_ENABLE_ERR` reader - Indicates a programming error of JTAG_SEL_ENABLE."]
pub type JTAG_SEL_ENABLE_ERR_R = crate::BitReader;
#[doc = "Field `SOFT_DIS_JTAG_ERR` reader - Indicates a programming error of SOFT_DIS_JTAG."]
pub type SOFT_DIS_JTAG_ERR_R = crate::FieldReader;
#[doc = "Field `DIS_PAD_JTAG_ERR` reader - Indicates a programming error of DIS_PAD_JTAG."]
pub type DIS_PAD_JTAG_ERR_R = crate::BitReader;
#[doc = "Field `DIS_DOWNLOAD_MANUAL_ENCRYPT_ERR` reader - Indicates a programming error of DIS_DOWNLOAD_MANUAL_ENCRYPT."]
pub type DIS_DOWNLOAD_MANUAL_ENCRYPT_ERR_R = crate::BitReader;
#[doc = "Field `USB_DREFH_ERR` reader - Indicates a programming error of USB_DREFH."]
pub type USB_DREFH_ERR_R = crate::FieldReader;
#[doc = "Field `USB_DREFL_ERR` reader - Indicates a programming error of USB_DREFL."]
pub type USB_DREFL_ERR_R = crate::FieldReader;
#[doc = "Field `USB_EXCHG_PINS_ERR` reader - Indicates a programming error of USB_EXCHG_PINS."]
pub type USB_EXCHG_PINS_ERR_R = crate::BitReader;
#[doc = "Field `VDD_SPI_AS_GPIO_ERR` reader - Indicates a programming error of VDD_SPI_AS_GPIO."]
pub type VDD_SPI_AS_GPIO_ERR_R = crate::BitReader;
#[doc = "Field `RPT4_RESERVED0_ERR_2` reader - Reserved."]
pub type RPT4_RESERVED0_ERR_2_R = crate::FieldReader;
#[doc = "Field `RPT4_RESERVED0_ERR_1` reader - Reserved."]
pub type RPT4_RESERVED0_ERR_1_R = crate::BitReader;
#[doc = "Field `RPT4_RESERVED0_ERR_0` reader - Reserved."]
pub type RPT4_RESERVED0_ERR_0_R = crate::FieldReader;
impl R {
    #[doc = "Bits 0:6 - Indicates a programming error of RD_DIS."]
    #[inline(always)]
    pub fn rd_dis_err(&self) -> RD_DIS_ERR_R {
        RD_DIS_ERR_R::new((self.bits & 0x7f) as u8)
    }
    #[doc = "Bit 7 - Reserved."]
    #[inline(always)]
    pub fn rpt4_reserved0_err_4(&self) -> RPT4_RESERVED0_ERR_4_R {
        RPT4_RESERVED0_ERR_4_R::new(((self.bits >> 7) & 1) != 0)
    }
    #[doc = "Bit 8 - Indicates a programming error of DIS_ICACHE."]
    #[inline(always)]
    pub fn dis_icache_err(&self) -> DIS_ICACHE_ERR_R {
        DIS_ICACHE_ERR_R::new(((self.bits >> 8) & 1) != 0)
    }
    #[doc = "Bit 9 - Indicates a programming error of DIS_USB_JTAG."]
    #[inline(always)]
    pub fn dis_usb_jtag_err(&self) -> DIS_USB_JTAG_ERR_R {
        DIS_USB_JTAG_ERR_R::new(((self.bits >> 9) & 1) != 0)
    }
    #[doc = "Bit 10 - Indicates a programming error of POWERGLITCH_EN."]
    #[inline(always)]
    pub fn powerglitch_en_err(&self) -> POWERGLITCH_EN_ERR_R {
        POWERGLITCH_EN_ERR_R::new(((self.bits >> 10) & 1) != 0)
    }
    #[doc = "Bit 11 - Indicates a programming error of DIS_USB_DEVICE."]
    #[inline(always)]
    pub fn dis_usb_serial_jtag_err(&self) -> DIS_USB_SERIAL_JTAG_ERR_R {
        DIS_USB_SERIAL_JTAG_ERR_R::new(((self.bits >> 11) & 1) != 0)
    }
    #[doc = "Bit 12 - Indicates a programming error of DIS_FORCE_DOWNLOAD."]
    #[inline(always)]
    pub fn dis_force_download_err(&self) -> DIS_FORCE_DOWNLOAD_ERR_R {
        DIS_FORCE_DOWNLOAD_ERR_R::new(((self.bits >> 12) & 1) != 0)
    }
    #[doc = "Bit 13 - Indicates a programming error of SPI_DOWNLOAD_MSPI_DIS."]
    #[inline(always)]
    pub fn spi_download_mspi_dis_err(&self) -> SPI_DOWNLOAD_MSPI_DIS_ERR_R {
        SPI_DOWNLOAD_MSPI_DIS_ERR_R::new(((self.bits >> 13) & 1) != 0)
    }
    #[doc = "Bit 14 - Indicates a programming error of DIS_CAN."]
    #[inline(always)]
    pub fn dis_twai_err(&self) -> DIS_TWAI_ERR_R {
        DIS_TWAI_ERR_R::new(((self.bits >> 14) & 1) != 0)
    }
    #[doc = "Bit 15 - Indicates a programming error of JTAG_SEL_ENABLE."]
    #[inline(always)]
    pub fn jtag_sel_enable_err(&self) -> JTAG_SEL_ENABLE_ERR_R {
        JTAG_SEL_ENABLE_ERR_R::new(((self.bits >> 15) & 1) != 0)
    }
    #[doc = "Bits 16:18 - Indicates a programming error of SOFT_DIS_JTAG."]
    #[inline(always)]
    pub fn soft_dis_jtag_err(&self) -> SOFT_DIS_JTAG_ERR_R {
        SOFT_DIS_JTAG_ERR_R::new(((self.bits >> 16) & 7) as u8)
    }
    #[doc = "Bit 19 - Indicates a programming error of DIS_PAD_JTAG."]
    #[inline(always)]
    pub fn dis_pad_jtag_err(&self) -> DIS_PAD_JTAG_ERR_R {
        DIS_PAD_JTAG_ERR_R::new(((self.bits >> 19) & 1) != 0)
    }
    #[doc = "Bit 20 - Indicates a programming error of DIS_DOWNLOAD_MANUAL_ENCRYPT."]
    #[inline(always)]
    pub fn dis_download_manual_encrypt_err(&self) -> DIS_DOWNLOAD_MANUAL_ENCRYPT_ERR_R {
        DIS_DOWNLOAD_MANUAL_ENCRYPT_ERR_R::new(((self.bits >> 20) & 1) != 0)
    }
    #[doc = "Bits 21:22 - Indicates a programming error of USB_DREFH."]
    #[inline(always)]
    pub fn usb_drefh_err(&self) -> USB_DREFH_ERR_R {
        USB_DREFH_ERR_R::new(((self.bits >> 21) & 3) as u8)
    }
    #[doc = "Bits 23:24 - Indicates a programming error of USB_DREFL."]
    #[inline(always)]
    pub fn usb_drefl_err(&self) -> USB_DREFL_ERR_R {
        USB_DREFL_ERR_R::new(((self.bits >> 23) & 3) as u8)
    }
    #[doc = "Bit 25 - Indicates a programming error of USB_EXCHG_PINS."]
    #[inline(always)]
    pub fn usb_exchg_pins_err(&self) -> USB_EXCHG_PINS_ERR_R {
        USB_EXCHG_PINS_ERR_R::new(((self.bits >> 25) & 1) != 0)
    }
    #[doc = "Bit 26 - Indicates a programming error of VDD_SPI_AS_GPIO."]
    #[inline(always)]
    pub fn vdd_spi_as_gpio_err(&self) -> VDD_SPI_AS_GPIO_ERR_R {
        VDD_SPI_AS_GPIO_ERR_R::new(((self.bits >> 26) & 1) != 0)
    }
    #[doc = "Bits 27:28 - Reserved."]
    #[inline(always)]
    pub fn rpt4_reserved0_err_2(&self) -> RPT4_RESERVED0_ERR_2_R {
        RPT4_RESERVED0_ERR_2_R::new(((self.bits >> 27) & 3) as u8)
    }
    #[doc = "Bit 29 - Reserved."]
    #[inline(always)]
    pub fn rpt4_reserved0_err_1(&self) -> RPT4_RESERVED0_ERR_1_R {
        RPT4_RESERVED0_ERR_1_R::new(((self.bits >> 29) & 1) != 0)
    }
    #[doc = "Bits 30:31 - Reserved."]
    #[inline(always)]
    pub fn rpt4_reserved0_err_0(&self) -> RPT4_RESERVED0_ERR_0_R {
        RPT4_RESERVED0_ERR_0_R::new(((self.bits >> 30) & 3) as u8)
    }
}
#[cfg(feature = "impl-register-debug")]
impl core::fmt::Debug for R {
    fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
        f.debug_struct("RD_REPEAT_ERR0")
            .field("rd_dis_err", &format_args!("{}", self.rd_dis_err().bits()))
            .field(
                "rpt4_reserved0_err_4",
                &format_args!("{}", self.rpt4_reserved0_err_4().bit()),
            )
            .field(
                "dis_icache_err",
                &format_args!("{}", self.dis_icache_err().bit()),
            )
            .field(
                "dis_usb_jtag_err",
                &format_args!("{}", self.dis_usb_jtag_err().bit()),
            )
            .field(
                "powerglitch_en_err",
                &format_args!("{}", self.powerglitch_en_err().bit()),
            )
            .field(
                "dis_usb_serial_jtag_err",
                &format_args!("{}", self.dis_usb_serial_jtag_err().bit()),
            )
            .field(
                "dis_force_download_err",
                &format_args!("{}", self.dis_force_download_err().bit()),
            )
            .field(
                "spi_download_mspi_dis_err",
                &format_args!("{}", self.spi_download_mspi_dis_err().bit()),
            )
            .field(
                "dis_twai_err",
                &format_args!("{}", self.dis_twai_err().bit()),
            )
            .field(
                "jtag_sel_enable_err",
                &format_args!("{}", self.jtag_sel_enable_err().bit()),
            )
            .field(
                "soft_dis_jtag_err",
                &format_args!("{}", self.soft_dis_jtag_err().bits()),
            )
            .field(
                "dis_pad_jtag_err",
                &format_args!("{}", self.dis_pad_jtag_err().bit()),
            )
            .field(
                "dis_download_manual_encrypt_err",
                &format_args!("{}", self.dis_download_manual_encrypt_err().bit()),
            )
            .field(
                "usb_drefh_err",
                &format_args!("{}", self.usb_drefh_err().bits()),
            )
            .field(
                "usb_drefl_err",
                &format_args!("{}", self.usb_drefl_err().bits()),
            )
            .field(
                "usb_exchg_pins_err",
                &format_args!("{}", self.usb_exchg_pins_err().bit()),
            )
            .field(
                "vdd_spi_as_gpio_err",
                &format_args!("{}", self.vdd_spi_as_gpio_err().bit()),
            )
            .field(
                "rpt4_reserved0_err_2",
                &format_args!("{}", self.rpt4_reserved0_err_2().bits()),
            )
            .field(
                "rpt4_reserved0_err_1",
                &format_args!("{}", self.rpt4_reserved0_err_1().bit()),
            )
            .field(
                "rpt4_reserved0_err_0",
                &format_args!("{}", self.rpt4_reserved0_err_0().bits()),
            )
            .finish()
    }
}
#[cfg(feature = "impl-register-debug")]
impl core::fmt::Debug for crate::generic::Reg<RD_REPEAT_ERR0_SPEC> {
    fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
        self.read().fmt(f)
    }
}
#[doc = "Programming error record register 0 of BLOCK0.\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`rd_repeat_err0::R`](R).  See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
pub struct RD_REPEAT_ERR0_SPEC;
impl crate::RegisterSpec for RD_REPEAT_ERR0_SPEC {
    type Ux = u32;
}
#[doc = "`read()` method returns [`rd_repeat_err0::R`](R) reader structure"]
impl crate::Readable for RD_REPEAT_ERR0_SPEC {}
#[doc = "`reset()` method sets RD_REPEAT_ERR0 to value 0"]
impl crate::Resettable for RD_REPEAT_ERR0_SPEC {
    const RESET_VALUE: Self::Ux = 0;
}