1#[doc = "Register `pe_cfg0` reader"]
2pub type R = crate::R<PE_CFG0_SPEC>;
3#[doc = "Register `pe_cfg0` writer"]
4pub type W = crate::W<PE_CFG0_SPEC>;
5#[doc = "Field `pe0_select` reader - PE0 Select"]
6pub type PE0_SELECT_R = crate::FieldReader<PE0_SELECT_A>;
7#[doc = "PE0 Select\n\nValue on reset: 0"]
8#[derive(Clone, Copy, Debug, PartialEq, Eq)]
9#[repr(u8)]
10pub enum PE0_SELECT_A {
11 #[doc = "0: `0`"]
12 INPUT = 0,
13 #[doc = "2: `10`"]
14 NCSI0_HSYNC = 2,
15 #[doc = "4: `100`"]
16 TWI1_SCK = 4,
17 #[doc = "8: `1000`"]
18 RGMII_RXCTRL_RMII_CRS_DV = 8,
19 #[doc = "14: `1110`"]
20 PE_EINT0 = 14,
21 #[doc = "1: `1`"]
22 OUTPUT = 1,
23 #[doc = "3: `11`"]
24 UART2_RTS = 3,
25 #[doc = "5: `101`"]
26 LCD0_HSYNC = 5,
27 #[doc = "15: `1111`"]
28 IO_DISABLE = 15,
29}
30impl From<PE0_SELECT_A> for u8 {
31 #[inline(always)]
32 fn from(variant: PE0_SELECT_A) -> Self {
33 variant as _
34 }
35}
36impl crate::FieldSpec for PE0_SELECT_A {
37 type Ux = u8;
38}
39impl PE0_SELECT_R {
40 #[doc = "Get enumerated values variant"]
41 #[inline(always)]
42 pub const fn variant(&self) -> Option<PE0_SELECT_A> {
43 match self.bits {
44 0 => Some(PE0_SELECT_A::INPUT),
45 2 => Some(PE0_SELECT_A::NCSI0_HSYNC),
46 4 => Some(PE0_SELECT_A::TWI1_SCK),
47 8 => Some(PE0_SELECT_A::RGMII_RXCTRL_RMII_CRS_DV),
48 14 => Some(PE0_SELECT_A::PE_EINT0),
49 1 => Some(PE0_SELECT_A::OUTPUT),
50 3 => Some(PE0_SELECT_A::UART2_RTS),
51 5 => Some(PE0_SELECT_A::LCD0_HSYNC),
52 15 => Some(PE0_SELECT_A::IO_DISABLE),
53 _ => None,
54 }
55 }
56 #[doc = "`0`"]
57 #[inline(always)]
58 pub fn is_input(&self) -> bool {
59 *self == PE0_SELECT_A::INPUT
60 }
61 #[doc = "`10`"]
62 #[inline(always)]
63 pub fn is_ncsi0_hsync(&self) -> bool {
64 *self == PE0_SELECT_A::NCSI0_HSYNC
65 }
66 #[doc = "`100`"]
67 #[inline(always)]
68 pub fn is_twi1_sck(&self) -> bool {
69 *self == PE0_SELECT_A::TWI1_SCK
70 }
71 #[doc = "`1000`"]
72 #[inline(always)]
73 pub fn is_rgmii_rxctrl_rmii_crs_dv(&self) -> bool {
74 *self == PE0_SELECT_A::RGMII_RXCTRL_RMII_CRS_DV
75 }
76 #[doc = "`1110`"]
77 #[inline(always)]
78 pub fn is_pe_eint0(&self) -> bool {
79 *self == PE0_SELECT_A::PE_EINT0
80 }
81 #[doc = "`1`"]
82 #[inline(always)]
83 pub fn is_output(&self) -> bool {
84 *self == PE0_SELECT_A::OUTPUT
85 }
86 #[doc = "`11`"]
87 #[inline(always)]
88 pub fn is_uart2_rts(&self) -> bool {
89 *self == PE0_SELECT_A::UART2_RTS
90 }
91 #[doc = "`101`"]
92 #[inline(always)]
93 pub fn is_lcd0_hsync(&self) -> bool {
94 *self == PE0_SELECT_A::LCD0_HSYNC
95 }
96 #[doc = "`1111`"]
97 #[inline(always)]
98 pub fn is_io_disable(&self) -> bool {
99 *self == PE0_SELECT_A::IO_DISABLE
100 }
101}
102#[doc = "Field `pe0_select` writer - PE0 Select"]
103pub type PE0_SELECT_W<'a, REG> = crate::FieldWriter<'a, REG, 4, PE0_SELECT_A>;
104impl<'a, REG> PE0_SELECT_W<'a, REG>
105where
106 REG: crate::Writable + crate::RegisterSpec,
107 REG::Ux: From<u8>,
108{
109 #[doc = "`0`"]
110 #[inline(always)]
111 pub fn input(self) -> &'a mut crate::W<REG> {
112 self.variant(PE0_SELECT_A::INPUT)
113 }
114 #[doc = "`10`"]
115 #[inline(always)]
116 pub fn ncsi0_hsync(self) -> &'a mut crate::W<REG> {
117 self.variant(PE0_SELECT_A::NCSI0_HSYNC)
118 }
119 #[doc = "`100`"]
120 #[inline(always)]
121 pub fn twi1_sck(self) -> &'a mut crate::W<REG> {
122 self.variant(PE0_SELECT_A::TWI1_SCK)
123 }
124 #[doc = "`1000`"]
125 #[inline(always)]
126 pub fn rgmii_rxctrl_rmii_crs_dv(self) -> &'a mut crate::W<REG> {
127 self.variant(PE0_SELECT_A::RGMII_RXCTRL_RMII_CRS_DV)
128 }
129 #[doc = "`1110`"]
130 #[inline(always)]
131 pub fn pe_eint0(self) -> &'a mut crate::W<REG> {
132 self.variant(PE0_SELECT_A::PE_EINT0)
133 }
134 #[doc = "`1`"]
135 #[inline(always)]
136 pub fn output(self) -> &'a mut crate::W<REG> {
137 self.variant(PE0_SELECT_A::OUTPUT)
138 }
139 #[doc = "`11`"]
140 #[inline(always)]
141 pub fn uart2_rts(self) -> &'a mut crate::W<REG> {
142 self.variant(PE0_SELECT_A::UART2_RTS)
143 }
144 #[doc = "`101`"]
145 #[inline(always)]
146 pub fn lcd0_hsync(self) -> &'a mut crate::W<REG> {
147 self.variant(PE0_SELECT_A::LCD0_HSYNC)
148 }
149 #[doc = "`1111`"]
150 #[inline(always)]
151 pub fn io_disable(self) -> &'a mut crate::W<REG> {
152 self.variant(PE0_SELECT_A::IO_DISABLE)
153 }
154}
155#[doc = "Field `pe1_select` reader - PE1 Select"]
156pub type PE1_SELECT_R = crate::FieldReader<PE1_SELECT_A>;
157#[doc = "PE1 Select\n\nValue on reset: 0"]
158#[derive(Clone, Copy, Debug, PartialEq, Eq)]
159#[repr(u8)]
160pub enum PE1_SELECT_A {
161 #[doc = "0: `0`"]
162 INPUT = 0,
163 #[doc = "2: `10`"]
164 NCSI0_VSYNC = 2,
165 #[doc = "4: `100`"]
166 TWI1_SDA = 4,
167 #[doc = "8: `1000`"]
168 RGMII_RXD0_RMII_RXD0 = 8,
169 #[doc = "14: `1110`"]
170 PE_EINT1 = 14,
171 #[doc = "1: `1`"]
172 OUTPUT = 1,
173 #[doc = "3: `11`"]
174 UART2_CTS = 3,
175 #[doc = "5: `101`"]
176 LCD0_VSYNC = 5,
177 #[doc = "15: `1111`"]
178 IO_DISABLE = 15,
179}
180impl From<PE1_SELECT_A> for u8 {
181 #[inline(always)]
182 fn from(variant: PE1_SELECT_A) -> Self {
183 variant as _
184 }
185}
186impl crate::FieldSpec for PE1_SELECT_A {
187 type Ux = u8;
188}
189impl PE1_SELECT_R {
190 #[doc = "Get enumerated values variant"]
191 #[inline(always)]
192 pub const fn variant(&self) -> Option<PE1_SELECT_A> {
193 match self.bits {
194 0 => Some(PE1_SELECT_A::INPUT),
195 2 => Some(PE1_SELECT_A::NCSI0_VSYNC),
196 4 => Some(PE1_SELECT_A::TWI1_SDA),
197 8 => Some(PE1_SELECT_A::RGMII_RXD0_RMII_RXD0),
198 14 => Some(PE1_SELECT_A::PE_EINT1),
199 1 => Some(PE1_SELECT_A::OUTPUT),
200 3 => Some(PE1_SELECT_A::UART2_CTS),
201 5 => Some(PE1_SELECT_A::LCD0_VSYNC),
202 15 => Some(PE1_SELECT_A::IO_DISABLE),
203 _ => None,
204 }
205 }
206 #[doc = "`0`"]
207 #[inline(always)]
208 pub fn is_input(&self) -> bool {
209 *self == PE1_SELECT_A::INPUT
210 }
211 #[doc = "`10`"]
212 #[inline(always)]
213 pub fn is_ncsi0_vsync(&self) -> bool {
214 *self == PE1_SELECT_A::NCSI0_VSYNC
215 }
216 #[doc = "`100`"]
217 #[inline(always)]
218 pub fn is_twi1_sda(&self) -> bool {
219 *self == PE1_SELECT_A::TWI1_SDA
220 }
221 #[doc = "`1000`"]
222 #[inline(always)]
223 pub fn is_rgmii_rxd0_rmii_rxd0(&self) -> bool {
224 *self == PE1_SELECT_A::RGMII_RXD0_RMII_RXD0
225 }
226 #[doc = "`1110`"]
227 #[inline(always)]
228 pub fn is_pe_eint1(&self) -> bool {
229 *self == PE1_SELECT_A::PE_EINT1
230 }
231 #[doc = "`1`"]
232 #[inline(always)]
233 pub fn is_output(&self) -> bool {
234 *self == PE1_SELECT_A::OUTPUT
235 }
236 #[doc = "`11`"]
237 #[inline(always)]
238 pub fn is_uart2_cts(&self) -> bool {
239 *self == PE1_SELECT_A::UART2_CTS
240 }
241 #[doc = "`101`"]
242 #[inline(always)]
243 pub fn is_lcd0_vsync(&self) -> bool {
244 *self == PE1_SELECT_A::LCD0_VSYNC
245 }
246 #[doc = "`1111`"]
247 #[inline(always)]
248 pub fn is_io_disable(&self) -> bool {
249 *self == PE1_SELECT_A::IO_DISABLE
250 }
251}
252#[doc = "Field `pe1_select` writer - PE1 Select"]
253pub type PE1_SELECT_W<'a, REG> = crate::FieldWriter<'a, REG, 4, PE1_SELECT_A>;
254impl<'a, REG> PE1_SELECT_W<'a, REG>
255where
256 REG: crate::Writable + crate::RegisterSpec,
257 REG::Ux: From<u8>,
258{
259 #[doc = "`0`"]
260 #[inline(always)]
261 pub fn input(self) -> &'a mut crate::W<REG> {
262 self.variant(PE1_SELECT_A::INPUT)
263 }
264 #[doc = "`10`"]
265 #[inline(always)]
266 pub fn ncsi0_vsync(self) -> &'a mut crate::W<REG> {
267 self.variant(PE1_SELECT_A::NCSI0_VSYNC)
268 }
269 #[doc = "`100`"]
270 #[inline(always)]
271 pub fn twi1_sda(self) -> &'a mut crate::W<REG> {
272 self.variant(PE1_SELECT_A::TWI1_SDA)
273 }
274 #[doc = "`1000`"]
275 #[inline(always)]
276 pub fn rgmii_rxd0_rmii_rxd0(self) -> &'a mut crate::W<REG> {
277 self.variant(PE1_SELECT_A::RGMII_RXD0_RMII_RXD0)
278 }
279 #[doc = "`1110`"]
280 #[inline(always)]
281 pub fn pe_eint1(self) -> &'a mut crate::W<REG> {
282 self.variant(PE1_SELECT_A::PE_EINT1)
283 }
284 #[doc = "`1`"]
285 #[inline(always)]
286 pub fn output(self) -> &'a mut crate::W<REG> {
287 self.variant(PE1_SELECT_A::OUTPUT)
288 }
289 #[doc = "`11`"]
290 #[inline(always)]
291 pub fn uart2_cts(self) -> &'a mut crate::W<REG> {
292 self.variant(PE1_SELECT_A::UART2_CTS)
293 }
294 #[doc = "`101`"]
295 #[inline(always)]
296 pub fn lcd0_vsync(self) -> &'a mut crate::W<REG> {
297 self.variant(PE1_SELECT_A::LCD0_VSYNC)
298 }
299 #[doc = "`1111`"]
300 #[inline(always)]
301 pub fn io_disable(self) -> &'a mut crate::W<REG> {
302 self.variant(PE1_SELECT_A::IO_DISABLE)
303 }
304}
305#[doc = "Field `pe2_select` reader - PE2 Select"]
306pub type PE2_SELECT_R = crate::FieldReader<PE2_SELECT_A>;
307#[doc = "PE2 Select\n\nValue on reset: 0"]
308#[derive(Clone, Copy, Debug, PartialEq, Eq)]
309#[repr(u8)]
310pub enum PE2_SELECT_A {
311 #[doc = "0: `0`"]
312 INPUT = 0,
313 #[doc = "2: `10`"]
314 NCSI0_PCLK = 2,
315 #[doc = "4: `100`"]
316 TWI0_SCK = 4,
317 #[doc = "6: `110`"]
318 UART0_TX = 6,
319 #[doc = "8: `1000`"]
320 RGMII_RXD1_RMII_RXD1 = 8,
321 #[doc = "14: `1110`"]
322 PE_EINT2 = 14,
323 #[doc = "15: `1111`"]
324 IO_DISABLE = 15,
325 #[doc = "1: `1`"]
326 OUTPUT = 1,
327 #[doc = "3: `11`"]
328 UART2_TX = 3,
329 #[doc = "5: `101`"]
330 CLK_FANOUT0 = 5,
331}
332impl From<PE2_SELECT_A> for u8 {
333 #[inline(always)]
334 fn from(variant: PE2_SELECT_A) -> Self {
335 variant as _
336 }
337}
338impl crate::FieldSpec for PE2_SELECT_A {
339 type Ux = u8;
340}
341impl PE2_SELECT_R {
342 #[doc = "Get enumerated values variant"]
343 #[inline(always)]
344 pub const fn variant(&self) -> Option<PE2_SELECT_A> {
345 match self.bits {
346 0 => Some(PE2_SELECT_A::INPUT),
347 2 => Some(PE2_SELECT_A::NCSI0_PCLK),
348 4 => Some(PE2_SELECT_A::TWI0_SCK),
349 6 => Some(PE2_SELECT_A::UART0_TX),
350 8 => Some(PE2_SELECT_A::RGMII_RXD1_RMII_RXD1),
351 14 => Some(PE2_SELECT_A::PE_EINT2),
352 15 => Some(PE2_SELECT_A::IO_DISABLE),
353 1 => Some(PE2_SELECT_A::OUTPUT),
354 3 => Some(PE2_SELECT_A::UART2_TX),
355 5 => Some(PE2_SELECT_A::CLK_FANOUT0),
356 _ => None,
357 }
358 }
359 #[doc = "`0`"]
360 #[inline(always)]
361 pub fn is_input(&self) -> bool {
362 *self == PE2_SELECT_A::INPUT
363 }
364 #[doc = "`10`"]
365 #[inline(always)]
366 pub fn is_ncsi0_pclk(&self) -> bool {
367 *self == PE2_SELECT_A::NCSI0_PCLK
368 }
369 #[doc = "`100`"]
370 #[inline(always)]
371 pub fn is_twi0_sck(&self) -> bool {
372 *self == PE2_SELECT_A::TWI0_SCK
373 }
374 #[doc = "`110`"]
375 #[inline(always)]
376 pub fn is_uart0_tx(&self) -> bool {
377 *self == PE2_SELECT_A::UART0_TX
378 }
379 #[doc = "`1000`"]
380 #[inline(always)]
381 pub fn is_rgmii_rxd1_rmii_rxd1(&self) -> bool {
382 *self == PE2_SELECT_A::RGMII_RXD1_RMII_RXD1
383 }
384 #[doc = "`1110`"]
385 #[inline(always)]
386 pub fn is_pe_eint2(&self) -> bool {
387 *self == PE2_SELECT_A::PE_EINT2
388 }
389 #[doc = "`1111`"]
390 #[inline(always)]
391 pub fn is_io_disable(&self) -> bool {
392 *self == PE2_SELECT_A::IO_DISABLE
393 }
394 #[doc = "`1`"]
395 #[inline(always)]
396 pub fn is_output(&self) -> bool {
397 *self == PE2_SELECT_A::OUTPUT
398 }
399 #[doc = "`11`"]
400 #[inline(always)]
401 pub fn is_uart2_tx(&self) -> bool {
402 *self == PE2_SELECT_A::UART2_TX
403 }
404 #[doc = "`101`"]
405 #[inline(always)]
406 pub fn is_clk_fanout0(&self) -> bool {
407 *self == PE2_SELECT_A::CLK_FANOUT0
408 }
409}
410#[doc = "Field `pe2_select` writer - PE2 Select"]
411pub type PE2_SELECT_W<'a, REG> = crate::FieldWriter<'a, REG, 4, PE2_SELECT_A>;
412impl<'a, REG> PE2_SELECT_W<'a, REG>
413where
414 REG: crate::Writable + crate::RegisterSpec,
415 REG::Ux: From<u8>,
416{
417 #[doc = "`0`"]
418 #[inline(always)]
419 pub fn input(self) -> &'a mut crate::W<REG> {
420 self.variant(PE2_SELECT_A::INPUT)
421 }
422 #[doc = "`10`"]
423 #[inline(always)]
424 pub fn ncsi0_pclk(self) -> &'a mut crate::W<REG> {
425 self.variant(PE2_SELECT_A::NCSI0_PCLK)
426 }
427 #[doc = "`100`"]
428 #[inline(always)]
429 pub fn twi0_sck(self) -> &'a mut crate::W<REG> {
430 self.variant(PE2_SELECT_A::TWI0_SCK)
431 }
432 #[doc = "`110`"]
433 #[inline(always)]
434 pub fn uart0_tx(self) -> &'a mut crate::W<REG> {
435 self.variant(PE2_SELECT_A::UART0_TX)
436 }
437 #[doc = "`1000`"]
438 #[inline(always)]
439 pub fn rgmii_rxd1_rmii_rxd1(self) -> &'a mut crate::W<REG> {
440 self.variant(PE2_SELECT_A::RGMII_RXD1_RMII_RXD1)
441 }
442 #[doc = "`1110`"]
443 #[inline(always)]
444 pub fn pe_eint2(self) -> &'a mut crate::W<REG> {
445 self.variant(PE2_SELECT_A::PE_EINT2)
446 }
447 #[doc = "`1111`"]
448 #[inline(always)]
449 pub fn io_disable(self) -> &'a mut crate::W<REG> {
450 self.variant(PE2_SELECT_A::IO_DISABLE)
451 }
452 #[doc = "`1`"]
453 #[inline(always)]
454 pub fn output(self) -> &'a mut crate::W<REG> {
455 self.variant(PE2_SELECT_A::OUTPUT)
456 }
457 #[doc = "`11`"]
458 #[inline(always)]
459 pub fn uart2_tx(self) -> &'a mut crate::W<REG> {
460 self.variant(PE2_SELECT_A::UART2_TX)
461 }
462 #[doc = "`101`"]
463 #[inline(always)]
464 pub fn clk_fanout0(self) -> &'a mut crate::W<REG> {
465 self.variant(PE2_SELECT_A::CLK_FANOUT0)
466 }
467}
468#[doc = "Field `pe3_select` reader - PE3 Select"]
469pub type PE3_SELECT_R = crate::FieldReader<PE3_SELECT_A>;
470#[doc = "PE3 Select\n\nValue on reset: 0"]
471#[derive(Clone, Copy, Debug, PartialEq, Eq)]
472#[repr(u8)]
473pub enum PE3_SELECT_A {
474 #[doc = "0: `0`"]
475 INPUT = 0,
476 #[doc = "2: `10`"]
477 NCSI0_MCLK = 2,
478 #[doc = "4: `100`"]
479 TWI0_SDA = 4,
480 #[doc = "6: `110`"]
481 UART0_RX = 6,
482 #[doc = "8: `1000`"]
483 RGMII_TXCK_RMII_TXCK = 8,
484 #[doc = "14: `1110`"]
485 PE_EINT3 = 14,
486 #[doc = "15: `1111`"]
487 IO_DISABLE = 15,
488 #[doc = "1: `1`"]
489 OUTPUT = 1,
490 #[doc = "3: `11`"]
491 UART2_RX = 3,
492 #[doc = "5: `101`"]
493 CLK_FANOUT1 = 5,
494}
495impl From<PE3_SELECT_A> for u8 {
496 #[inline(always)]
497 fn from(variant: PE3_SELECT_A) -> Self {
498 variant as _
499 }
500}
501impl crate::FieldSpec for PE3_SELECT_A {
502 type Ux = u8;
503}
504impl PE3_SELECT_R {
505 #[doc = "Get enumerated values variant"]
506 #[inline(always)]
507 pub const fn variant(&self) -> Option<PE3_SELECT_A> {
508 match self.bits {
509 0 => Some(PE3_SELECT_A::INPUT),
510 2 => Some(PE3_SELECT_A::NCSI0_MCLK),
511 4 => Some(PE3_SELECT_A::TWI0_SDA),
512 6 => Some(PE3_SELECT_A::UART0_RX),
513 8 => Some(PE3_SELECT_A::RGMII_TXCK_RMII_TXCK),
514 14 => Some(PE3_SELECT_A::PE_EINT3),
515 15 => Some(PE3_SELECT_A::IO_DISABLE),
516 1 => Some(PE3_SELECT_A::OUTPUT),
517 3 => Some(PE3_SELECT_A::UART2_RX),
518 5 => Some(PE3_SELECT_A::CLK_FANOUT1),
519 _ => None,
520 }
521 }
522 #[doc = "`0`"]
523 #[inline(always)]
524 pub fn is_input(&self) -> bool {
525 *self == PE3_SELECT_A::INPUT
526 }
527 #[doc = "`10`"]
528 #[inline(always)]
529 pub fn is_ncsi0_mclk(&self) -> bool {
530 *self == PE3_SELECT_A::NCSI0_MCLK
531 }
532 #[doc = "`100`"]
533 #[inline(always)]
534 pub fn is_twi0_sda(&self) -> bool {
535 *self == PE3_SELECT_A::TWI0_SDA
536 }
537 #[doc = "`110`"]
538 #[inline(always)]
539 pub fn is_uart0_rx(&self) -> bool {
540 *self == PE3_SELECT_A::UART0_RX
541 }
542 #[doc = "`1000`"]
543 #[inline(always)]
544 pub fn is_rgmii_txck_rmii_txck(&self) -> bool {
545 *self == PE3_SELECT_A::RGMII_TXCK_RMII_TXCK
546 }
547 #[doc = "`1110`"]
548 #[inline(always)]
549 pub fn is_pe_eint3(&self) -> bool {
550 *self == PE3_SELECT_A::PE_EINT3
551 }
552 #[doc = "`1111`"]
553 #[inline(always)]
554 pub fn is_io_disable(&self) -> bool {
555 *self == PE3_SELECT_A::IO_DISABLE
556 }
557 #[doc = "`1`"]
558 #[inline(always)]
559 pub fn is_output(&self) -> bool {
560 *self == PE3_SELECT_A::OUTPUT
561 }
562 #[doc = "`11`"]
563 #[inline(always)]
564 pub fn is_uart2_rx(&self) -> bool {
565 *self == PE3_SELECT_A::UART2_RX
566 }
567 #[doc = "`101`"]
568 #[inline(always)]
569 pub fn is_clk_fanout1(&self) -> bool {
570 *self == PE3_SELECT_A::CLK_FANOUT1
571 }
572}
573#[doc = "Field `pe3_select` writer - PE3 Select"]
574pub type PE3_SELECT_W<'a, REG> = crate::FieldWriter<'a, REG, 4, PE3_SELECT_A>;
575impl<'a, REG> PE3_SELECT_W<'a, REG>
576where
577 REG: crate::Writable + crate::RegisterSpec,
578 REG::Ux: From<u8>,
579{
580 #[doc = "`0`"]
581 #[inline(always)]
582 pub fn input(self) -> &'a mut crate::W<REG> {
583 self.variant(PE3_SELECT_A::INPUT)
584 }
585 #[doc = "`10`"]
586 #[inline(always)]
587 pub fn ncsi0_mclk(self) -> &'a mut crate::W<REG> {
588 self.variant(PE3_SELECT_A::NCSI0_MCLK)
589 }
590 #[doc = "`100`"]
591 #[inline(always)]
592 pub fn twi0_sda(self) -> &'a mut crate::W<REG> {
593 self.variant(PE3_SELECT_A::TWI0_SDA)
594 }
595 #[doc = "`110`"]
596 #[inline(always)]
597 pub fn uart0_rx(self) -> &'a mut crate::W<REG> {
598 self.variant(PE3_SELECT_A::UART0_RX)
599 }
600 #[doc = "`1000`"]
601 #[inline(always)]
602 pub fn rgmii_txck_rmii_txck(self) -> &'a mut crate::W<REG> {
603 self.variant(PE3_SELECT_A::RGMII_TXCK_RMII_TXCK)
604 }
605 #[doc = "`1110`"]
606 #[inline(always)]
607 pub fn pe_eint3(self) -> &'a mut crate::W<REG> {
608 self.variant(PE3_SELECT_A::PE_EINT3)
609 }
610 #[doc = "`1111`"]
611 #[inline(always)]
612 pub fn io_disable(self) -> &'a mut crate::W<REG> {
613 self.variant(PE3_SELECT_A::IO_DISABLE)
614 }
615 #[doc = "`1`"]
616 #[inline(always)]
617 pub fn output(self) -> &'a mut crate::W<REG> {
618 self.variant(PE3_SELECT_A::OUTPUT)
619 }
620 #[doc = "`11`"]
621 #[inline(always)]
622 pub fn uart2_rx(self) -> &'a mut crate::W<REG> {
623 self.variant(PE3_SELECT_A::UART2_RX)
624 }
625 #[doc = "`101`"]
626 #[inline(always)]
627 pub fn clk_fanout1(self) -> &'a mut crate::W<REG> {
628 self.variant(PE3_SELECT_A::CLK_FANOUT1)
629 }
630}
631#[doc = "Field `pe4_select` reader - PE4 Select"]
632pub type PE4_SELECT_R = crate::FieldReader<PE4_SELECT_A>;
633#[doc = "PE4 Select\n\nValue on reset: 0"]
634#[derive(Clone, Copy, Debug, PartialEq, Eq)]
635#[repr(u8)]
636pub enum PE4_SELECT_A {
637 #[doc = "0: `0`"]
638 INPUT = 0,
639 #[doc = "2: `10`"]
640 NCSI0_D0 = 2,
641 #[doc = "4: `100`"]
642 TWI2_SCK = 4,
643 #[doc = "6: `110`"]
644 D_JTAG_MS = 6,
645 #[doc = "8: `1000`"]
646 RGMII_TXD0_RMII_TXD0 = 8,
647 #[doc = "14: `1110`"]
648 PE_EINT4 = 14,
649 #[doc = "15: `1111`"]
650 IO_DISABLE = 15,
651 #[doc = "1: `1`"]
652 OUTPUT = 1,
653 #[doc = "3: `11`"]
654 UART4_TX = 3,
655 #[doc = "5: `101`"]
656 CLK_FANOUT2 = 5,
657 #[doc = "7: `111`"]
658 R_JTAG_MS = 7,
659}
660impl From<PE4_SELECT_A> for u8 {
661 #[inline(always)]
662 fn from(variant: PE4_SELECT_A) -> Self {
663 variant as _
664 }
665}
666impl crate::FieldSpec for PE4_SELECT_A {
667 type Ux = u8;
668}
669impl PE4_SELECT_R {
670 #[doc = "Get enumerated values variant"]
671 #[inline(always)]
672 pub const fn variant(&self) -> Option<PE4_SELECT_A> {
673 match self.bits {
674 0 => Some(PE4_SELECT_A::INPUT),
675 2 => Some(PE4_SELECT_A::NCSI0_D0),
676 4 => Some(PE4_SELECT_A::TWI2_SCK),
677 6 => Some(PE4_SELECT_A::D_JTAG_MS),
678 8 => Some(PE4_SELECT_A::RGMII_TXD0_RMII_TXD0),
679 14 => Some(PE4_SELECT_A::PE_EINT4),
680 15 => Some(PE4_SELECT_A::IO_DISABLE),
681 1 => Some(PE4_SELECT_A::OUTPUT),
682 3 => Some(PE4_SELECT_A::UART4_TX),
683 5 => Some(PE4_SELECT_A::CLK_FANOUT2),
684 7 => Some(PE4_SELECT_A::R_JTAG_MS),
685 _ => None,
686 }
687 }
688 #[doc = "`0`"]
689 #[inline(always)]
690 pub fn is_input(&self) -> bool {
691 *self == PE4_SELECT_A::INPUT
692 }
693 #[doc = "`10`"]
694 #[inline(always)]
695 pub fn is_ncsi0_d0(&self) -> bool {
696 *self == PE4_SELECT_A::NCSI0_D0
697 }
698 #[doc = "`100`"]
699 #[inline(always)]
700 pub fn is_twi2_sck(&self) -> bool {
701 *self == PE4_SELECT_A::TWI2_SCK
702 }
703 #[doc = "`110`"]
704 #[inline(always)]
705 pub fn is_d_jtag_ms(&self) -> bool {
706 *self == PE4_SELECT_A::D_JTAG_MS
707 }
708 #[doc = "`1000`"]
709 #[inline(always)]
710 pub fn is_rgmii_txd0_rmii_txd0(&self) -> bool {
711 *self == PE4_SELECT_A::RGMII_TXD0_RMII_TXD0
712 }
713 #[doc = "`1110`"]
714 #[inline(always)]
715 pub fn is_pe_eint4(&self) -> bool {
716 *self == PE4_SELECT_A::PE_EINT4
717 }
718 #[doc = "`1111`"]
719 #[inline(always)]
720 pub fn is_io_disable(&self) -> bool {
721 *self == PE4_SELECT_A::IO_DISABLE
722 }
723 #[doc = "`1`"]
724 #[inline(always)]
725 pub fn is_output(&self) -> bool {
726 *self == PE4_SELECT_A::OUTPUT
727 }
728 #[doc = "`11`"]
729 #[inline(always)]
730 pub fn is_uart4_tx(&self) -> bool {
731 *self == PE4_SELECT_A::UART4_TX
732 }
733 #[doc = "`101`"]
734 #[inline(always)]
735 pub fn is_clk_fanout2(&self) -> bool {
736 *self == PE4_SELECT_A::CLK_FANOUT2
737 }
738 #[doc = "`111`"]
739 #[inline(always)]
740 pub fn is_r_jtag_ms(&self) -> bool {
741 *self == PE4_SELECT_A::R_JTAG_MS
742 }
743}
744#[doc = "Field `pe4_select` writer - PE4 Select"]
745pub type PE4_SELECT_W<'a, REG> = crate::FieldWriter<'a, REG, 4, PE4_SELECT_A>;
746impl<'a, REG> PE4_SELECT_W<'a, REG>
747where
748 REG: crate::Writable + crate::RegisterSpec,
749 REG::Ux: From<u8>,
750{
751 #[doc = "`0`"]
752 #[inline(always)]
753 pub fn input(self) -> &'a mut crate::W<REG> {
754 self.variant(PE4_SELECT_A::INPUT)
755 }
756 #[doc = "`10`"]
757 #[inline(always)]
758 pub fn ncsi0_d0(self) -> &'a mut crate::W<REG> {
759 self.variant(PE4_SELECT_A::NCSI0_D0)
760 }
761 #[doc = "`100`"]
762 #[inline(always)]
763 pub fn twi2_sck(self) -> &'a mut crate::W<REG> {
764 self.variant(PE4_SELECT_A::TWI2_SCK)
765 }
766 #[doc = "`110`"]
767 #[inline(always)]
768 pub fn d_jtag_ms(self) -> &'a mut crate::W<REG> {
769 self.variant(PE4_SELECT_A::D_JTAG_MS)
770 }
771 #[doc = "`1000`"]
772 #[inline(always)]
773 pub fn rgmii_txd0_rmii_txd0(self) -> &'a mut crate::W<REG> {
774 self.variant(PE4_SELECT_A::RGMII_TXD0_RMII_TXD0)
775 }
776 #[doc = "`1110`"]
777 #[inline(always)]
778 pub fn pe_eint4(self) -> &'a mut crate::W<REG> {
779 self.variant(PE4_SELECT_A::PE_EINT4)
780 }
781 #[doc = "`1111`"]
782 #[inline(always)]
783 pub fn io_disable(self) -> &'a mut crate::W<REG> {
784 self.variant(PE4_SELECT_A::IO_DISABLE)
785 }
786 #[doc = "`1`"]
787 #[inline(always)]
788 pub fn output(self) -> &'a mut crate::W<REG> {
789 self.variant(PE4_SELECT_A::OUTPUT)
790 }
791 #[doc = "`11`"]
792 #[inline(always)]
793 pub fn uart4_tx(self) -> &'a mut crate::W<REG> {
794 self.variant(PE4_SELECT_A::UART4_TX)
795 }
796 #[doc = "`101`"]
797 #[inline(always)]
798 pub fn clk_fanout2(self) -> &'a mut crate::W<REG> {
799 self.variant(PE4_SELECT_A::CLK_FANOUT2)
800 }
801 #[doc = "`111`"]
802 #[inline(always)]
803 pub fn r_jtag_ms(self) -> &'a mut crate::W<REG> {
804 self.variant(PE4_SELECT_A::R_JTAG_MS)
805 }
806}
807#[doc = "Field `pe5_select` reader - PE5 Select"]
808pub type PE5_SELECT_R = crate::FieldReader<PE5_SELECT_A>;
809#[doc = "PE5 Select\n\nValue on reset: 0"]
810#[derive(Clone, Copy, Debug, PartialEq, Eq)]
811#[repr(u8)]
812pub enum PE5_SELECT_A {
813 #[doc = "0: `0`"]
814 INPUT = 0,
815 #[doc = "2: `10`"]
816 NCSI0_D1 = 2,
817 #[doc = "4: `100`"]
818 TWI2_SDA = 4,
819 #[doc = "6: `110`"]
820 D_JTAG_DI = 6,
821 #[doc = "8: `1000`"]
822 RGMII_TXD1_RMII_TXD1 = 8,
823 #[doc = "14: `1110`"]
824 PE_EINT5 = 14,
825 #[doc = "15: `1111`"]
826 IO_DISABLE = 15,
827 #[doc = "1: `1`"]
828 OUTPUT = 1,
829 #[doc = "3: `11`"]
830 UART4_RX = 3,
831 #[doc = "5: `101`"]
832 LEDC_DO = 5,
833 #[doc = "7: `111`"]
834 R_JTAG_DI = 7,
835}
836impl From<PE5_SELECT_A> for u8 {
837 #[inline(always)]
838 fn from(variant: PE5_SELECT_A) -> Self {
839 variant as _
840 }
841}
842impl crate::FieldSpec for PE5_SELECT_A {
843 type Ux = u8;
844}
845impl PE5_SELECT_R {
846 #[doc = "Get enumerated values variant"]
847 #[inline(always)]
848 pub const fn variant(&self) -> Option<PE5_SELECT_A> {
849 match self.bits {
850 0 => Some(PE5_SELECT_A::INPUT),
851 2 => Some(PE5_SELECT_A::NCSI0_D1),
852 4 => Some(PE5_SELECT_A::TWI2_SDA),
853 6 => Some(PE5_SELECT_A::D_JTAG_DI),
854 8 => Some(PE5_SELECT_A::RGMII_TXD1_RMII_TXD1),
855 14 => Some(PE5_SELECT_A::PE_EINT5),
856 15 => Some(PE5_SELECT_A::IO_DISABLE),
857 1 => Some(PE5_SELECT_A::OUTPUT),
858 3 => Some(PE5_SELECT_A::UART4_RX),
859 5 => Some(PE5_SELECT_A::LEDC_DO),
860 7 => Some(PE5_SELECT_A::R_JTAG_DI),
861 _ => None,
862 }
863 }
864 #[doc = "`0`"]
865 #[inline(always)]
866 pub fn is_input(&self) -> bool {
867 *self == PE5_SELECT_A::INPUT
868 }
869 #[doc = "`10`"]
870 #[inline(always)]
871 pub fn is_ncsi0_d1(&self) -> bool {
872 *self == PE5_SELECT_A::NCSI0_D1
873 }
874 #[doc = "`100`"]
875 #[inline(always)]
876 pub fn is_twi2_sda(&self) -> bool {
877 *self == PE5_SELECT_A::TWI2_SDA
878 }
879 #[doc = "`110`"]
880 #[inline(always)]
881 pub fn is_d_jtag_di(&self) -> bool {
882 *self == PE5_SELECT_A::D_JTAG_DI
883 }
884 #[doc = "`1000`"]
885 #[inline(always)]
886 pub fn is_rgmii_txd1_rmii_txd1(&self) -> bool {
887 *self == PE5_SELECT_A::RGMII_TXD1_RMII_TXD1
888 }
889 #[doc = "`1110`"]
890 #[inline(always)]
891 pub fn is_pe_eint5(&self) -> bool {
892 *self == PE5_SELECT_A::PE_EINT5
893 }
894 #[doc = "`1111`"]
895 #[inline(always)]
896 pub fn is_io_disable(&self) -> bool {
897 *self == PE5_SELECT_A::IO_DISABLE
898 }
899 #[doc = "`1`"]
900 #[inline(always)]
901 pub fn is_output(&self) -> bool {
902 *self == PE5_SELECT_A::OUTPUT
903 }
904 #[doc = "`11`"]
905 #[inline(always)]
906 pub fn is_uart4_rx(&self) -> bool {
907 *self == PE5_SELECT_A::UART4_RX
908 }
909 #[doc = "`101`"]
910 #[inline(always)]
911 pub fn is_ledc_do(&self) -> bool {
912 *self == PE5_SELECT_A::LEDC_DO
913 }
914 #[doc = "`111`"]
915 #[inline(always)]
916 pub fn is_r_jtag_di(&self) -> bool {
917 *self == PE5_SELECT_A::R_JTAG_DI
918 }
919}
920#[doc = "Field `pe5_select` writer - PE5 Select"]
921pub type PE5_SELECT_W<'a, REG> = crate::FieldWriter<'a, REG, 4, PE5_SELECT_A>;
922impl<'a, REG> PE5_SELECT_W<'a, REG>
923where
924 REG: crate::Writable + crate::RegisterSpec,
925 REG::Ux: From<u8>,
926{
927 #[doc = "`0`"]
928 #[inline(always)]
929 pub fn input(self) -> &'a mut crate::W<REG> {
930 self.variant(PE5_SELECT_A::INPUT)
931 }
932 #[doc = "`10`"]
933 #[inline(always)]
934 pub fn ncsi0_d1(self) -> &'a mut crate::W<REG> {
935 self.variant(PE5_SELECT_A::NCSI0_D1)
936 }
937 #[doc = "`100`"]
938 #[inline(always)]
939 pub fn twi2_sda(self) -> &'a mut crate::W<REG> {
940 self.variant(PE5_SELECT_A::TWI2_SDA)
941 }
942 #[doc = "`110`"]
943 #[inline(always)]
944 pub fn d_jtag_di(self) -> &'a mut crate::W<REG> {
945 self.variant(PE5_SELECT_A::D_JTAG_DI)
946 }
947 #[doc = "`1000`"]
948 #[inline(always)]
949 pub fn rgmii_txd1_rmii_txd1(self) -> &'a mut crate::W<REG> {
950 self.variant(PE5_SELECT_A::RGMII_TXD1_RMII_TXD1)
951 }
952 #[doc = "`1110`"]
953 #[inline(always)]
954 pub fn pe_eint5(self) -> &'a mut crate::W<REG> {
955 self.variant(PE5_SELECT_A::PE_EINT5)
956 }
957 #[doc = "`1111`"]
958 #[inline(always)]
959 pub fn io_disable(self) -> &'a mut crate::W<REG> {
960 self.variant(PE5_SELECT_A::IO_DISABLE)
961 }
962 #[doc = "`1`"]
963 #[inline(always)]
964 pub fn output(self) -> &'a mut crate::W<REG> {
965 self.variant(PE5_SELECT_A::OUTPUT)
966 }
967 #[doc = "`11`"]
968 #[inline(always)]
969 pub fn uart4_rx(self) -> &'a mut crate::W<REG> {
970 self.variant(PE5_SELECT_A::UART4_RX)
971 }
972 #[doc = "`101`"]
973 #[inline(always)]
974 pub fn ledc_do(self) -> &'a mut crate::W<REG> {
975 self.variant(PE5_SELECT_A::LEDC_DO)
976 }
977 #[doc = "`111`"]
978 #[inline(always)]
979 pub fn r_jtag_di(self) -> &'a mut crate::W<REG> {
980 self.variant(PE5_SELECT_A::R_JTAG_DI)
981 }
982}
983#[doc = "Field `pe6_select` reader - PE6 Select"]
984pub type PE6_SELECT_R = crate::FieldReader<PE6_SELECT_A>;
985#[doc = "PE6 Select\n\nValue on reset: 0"]
986#[derive(Clone, Copy, Debug, PartialEq, Eq)]
987#[repr(u8)]
988pub enum PE6_SELECT_A {
989 #[doc = "0: `0`"]
990 INPUT = 0,
991 #[doc = "2: `10`"]
992 NCSI0_D2 = 2,
993 #[doc = "4: `100`"]
994 TWI3_SCK = 4,
995 #[doc = "6: `110`"]
996 D_JTAG_DO = 6,
997 #[doc = "8: `1000`"]
998 RMII_TXCTRL_RMII_TXEN = 8,
999 #[doc = "14: `1110`"]
1000 PE_EINT6 = 14,
1001 #[doc = "15: `1111`"]
1002 IO_DISABLE = 15,
1003 #[doc = "1: `1`"]
1004 OUTPUT = 1,
1005 #[doc = "3: `11`"]
1006 UART5_TX = 3,
1007 #[doc = "5: `101`"]
1008 OWA_IN = 5,
1009 #[doc = "7: `111`"]
1010 R_JTAG_DO = 7,
1011}
1012impl From<PE6_SELECT_A> for u8 {
1013 #[inline(always)]
1014 fn from(variant: PE6_SELECT_A) -> Self {
1015 variant as _
1016 }
1017}
1018impl crate::FieldSpec for PE6_SELECT_A {
1019 type Ux = u8;
1020}
1021impl PE6_SELECT_R {
1022 #[doc = "Get enumerated values variant"]
1023 #[inline(always)]
1024 pub const fn variant(&self) -> Option<PE6_SELECT_A> {
1025 match self.bits {
1026 0 => Some(PE6_SELECT_A::INPUT),
1027 2 => Some(PE6_SELECT_A::NCSI0_D2),
1028 4 => Some(PE6_SELECT_A::TWI3_SCK),
1029 6 => Some(PE6_SELECT_A::D_JTAG_DO),
1030 8 => Some(PE6_SELECT_A::RMII_TXCTRL_RMII_TXEN),
1031 14 => Some(PE6_SELECT_A::PE_EINT6),
1032 15 => Some(PE6_SELECT_A::IO_DISABLE),
1033 1 => Some(PE6_SELECT_A::OUTPUT),
1034 3 => Some(PE6_SELECT_A::UART5_TX),
1035 5 => Some(PE6_SELECT_A::OWA_IN),
1036 7 => Some(PE6_SELECT_A::R_JTAG_DO),
1037 _ => None,
1038 }
1039 }
1040 #[doc = "`0`"]
1041 #[inline(always)]
1042 pub fn is_input(&self) -> bool {
1043 *self == PE6_SELECT_A::INPUT
1044 }
1045 #[doc = "`10`"]
1046 #[inline(always)]
1047 pub fn is_ncsi0_d2(&self) -> bool {
1048 *self == PE6_SELECT_A::NCSI0_D2
1049 }
1050 #[doc = "`100`"]
1051 #[inline(always)]
1052 pub fn is_twi3_sck(&self) -> bool {
1053 *self == PE6_SELECT_A::TWI3_SCK
1054 }
1055 #[doc = "`110`"]
1056 #[inline(always)]
1057 pub fn is_d_jtag_do(&self) -> bool {
1058 *self == PE6_SELECT_A::D_JTAG_DO
1059 }
1060 #[doc = "`1000`"]
1061 #[inline(always)]
1062 pub fn is_rmii_txctrl_rmii_txen(&self) -> bool {
1063 *self == PE6_SELECT_A::RMII_TXCTRL_RMII_TXEN
1064 }
1065 #[doc = "`1110`"]
1066 #[inline(always)]
1067 pub fn is_pe_eint6(&self) -> bool {
1068 *self == PE6_SELECT_A::PE_EINT6
1069 }
1070 #[doc = "`1111`"]
1071 #[inline(always)]
1072 pub fn is_io_disable(&self) -> bool {
1073 *self == PE6_SELECT_A::IO_DISABLE
1074 }
1075 #[doc = "`1`"]
1076 #[inline(always)]
1077 pub fn is_output(&self) -> bool {
1078 *self == PE6_SELECT_A::OUTPUT
1079 }
1080 #[doc = "`11`"]
1081 #[inline(always)]
1082 pub fn is_uart5_tx(&self) -> bool {
1083 *self == PE6_SELECT_A::UART5_TX
1084 }
1085 #[doc = "`101`"]
1086 #[inline(always)]
1087 pub fn is_owa_in(&self) -> bool {
1088 *self == PE6_SELECT_A::OWA_IN
1089 }
1090 #[doc = "`111`"]
1091 #[inline(always)]
1092 pub fn is_r_jtag_do(&self) -> bool {
1093 *self == PE6_SELECT_A::R_JTAG_DO
1094 }
1095}
1096#[doc = "Field `pe6_select` writer - PE6 Select"]
1097pub type PE6_SELECT_W<'a, REG> = crate::FieldWriter<'a, REG, 4, PE6_SELECT_A>;
1098impl<'a, REG> PE6_SELECT_W<'a, REG>
1099where
1100 REG: crate::Writable + crate::RegisterSpec,
1101 REG::Ux: From<u8>,
1102{
1103 #[doc = "`0`"]
1104 #[inline(always)]
1105 pub fn input(self) -> &'a mut crate::W<REG> {
1106 self.variant(PE6_SELECT_A::INPUT)
1107 }
1108 #[doc = "`10`"]
1109 #[inline(always)]
1110 pub fn ncsi0_d2(self) -> &'a mut crate::W<REG> {
1111 self.variant(PE6_SELECT_A::NCSI0_D2)
1112 }
1113 #[doc = "`100`"]
1114 #[inline(always)]
1115 pub fn twi3_sck(self) -> &'a mut crate::W<REG> {
1116 self.variant(PE6_SELECT_A::TWI3_SCK)
1117 }
1118 #[doc = "`110`"]
1119 #[inline(always)]
1120 pub fn d_jtag_do(self) -> &'a mut crate::W<REG> {
1121 self.variant(PE6_SELECT_A::D_JTAG_DO)
1122 }
1123 #[doc = "`1000`"]
1124 #[inline(always)]
1125 pub fn rmii_txctrl_rmii_txen(self) -> &'a mut crate::W<REG> {
1126 self.variant(PE6_SELECT_A::RMII_TXCTRL_RMII_TXEN)
1127 }
1128 #[doc = "`1110`"]
1129 #[inline(always)]
1130 pub fn pe_eint6(self) -> &'a mut crate::W<REG> {
1131 self.variant(PE6_SELECT_A::PE_EINT6)
1132 }
1133 #[doc = "`1111`"]
1134 #[inline(always)]
1135 pub fn io_disable(self) -> &'a mut crate::W<REG> {
1136 self.variant(PE6_SELECT_A::IO_DISABLE)
1137 }
1138 #[doc = "`1`"]
1139 #[inline(always)]
1140 pub fn output(self) -> &'a mut crate::W<REG> {
1141 self.variant(PE6_SELECT_A::OUTPUT)
1142 }
1143 #[doc = "`11`"]
1144 #[inline(always)]
1145 pub fn uart5_tx(self) -> &'a mut crate::W<REG> {
1146 self.variant(PE6_SELECT_A::UART5_TX)
1147 }
1148 #[doc = "`101`"]
1149 #[inline(always)]
1150 pub fn owa_in(self) -> &'a mut crate::W<REG> {
1151 self.variant(PE6_SELECT_A::OWA_IN)
1152 }
1153 #[doc = "`111`"]
1154 #[inline(always)]
1155 pub fn r_jtag_do(self) -> &'a mut crate::W<REG> {
1156 self.variant(PE6_SELECT_A::R_JTAG_DO)
1157 }
1158}
1159#[doc = "Field `pe7_select` reader - PE7 Select"]
1160pub type PE7_SELECT_R = crate::FieldReader<PE7_SELECT_A>;
1161#[doc = "PE7 Select\n\nValue on reset: 0"]
1162#[derive(Clone, Copy, Debug, PartialEq, Eq)]
1163#[repr(u8)]
1164pub enum PE7_SELECT_A {
1165 #[doc = "0: `0`"]
1166 INPUT = 0,
1167 #[doc = "2: `10`"]
1168 NCSI0_D3 = 2,
1169 #[doc = "4: `100`"]
1170 TWI3_SDA = 4,
1171 #[doc = "6: `110`"]
1172 D_JTAG_CK = 6,
1173 #[doc = "8: `1000`"]
1174 RGMII_CLKIN_RMII_RXER = 8,
1175 #[doc = "14: `1110`"]
1176 PE_EINT7 = 14,
1177 #[doc = "15: `1111`"]
1178 IO_DISABLE = 15,
1179 #[doc = "1: `1`"]
1180 OUTPUT = 1,
1181 #[doc = "3: `11`"]
1182 UART5_RX = 3,
1183 #[doc = "5: `101`"]
1184 OWA_OUT = 5,
1185 #[doc = "7: `111`"]
1186 R_JTAG_CK = 7,
1187}
1188impl From<PE7_SELECT_A> for u8 {
1189 #[inline(always)]
1190 fn from(variant: PE7_SELECT_A) -> Self {
1191 variant as _
1192 }
1193}
1194impl crate::FieldSpec for PE7_SELECT_A {
1195 type Ux = u8;
1196}
1197impl PE7_SELECT_R {
1198 #[doc = "Get enumerated values variant"]
1199 #[inline(always)]
1200 pub const fn variant(&self) -> Option<PE7_SELECT_A> {
1201 match self.bits {
1202 0 => Some(PE7_SELECT_A::INPUT),
1203 2 => Some(PE7_SELECT_A::NCSI0_D3),
1204 4 => Some(PE7_SELECT_A::TWI3_SDA),
1205 6 => Some(PE7_SELECT_A::D_JTAG_CK),
1206 8 => Some(PE7_SELECT_A::RGMII_CLKIN_RMII_RXER),
1207 14 => Some(PE7_SELECT_A::PE_EINT7),
1208 15 => Some(PE7_SELECT_A::IO_DISABLE),
1209 1 => Some(PE7_SELECT_A::OUTPUT),
1210 3 => Some(PE7_SELECT_A::UART5_RX),
1211 5 => Some(PE7_SELECT_A::OWA_OUT),
1212 7 => Some(PE7_SELECT_A::R_JTAG_CK),
1213 _ => None,
1214 }
1215 }
1216 #[doc = "`0`"]
1217 #[inline(always)]
1218 pub fn is_input(&self) -> bool {
1219 *self == PE7_SELECT_A::INPUT
1220 }
1221 #[doc = "`10`"]
1222 #[inline(always)]
1223 pub fn is_ncsi0_d3(&self) -> bool {
1224 *self == PE7_SELECT_A::NCSI0_D3
1225 }
1226 #[doc = "`100`"]
1227 #[inline(always)]
1228 pub fn is_twi3_sda(&self) -> bool {
1229 *self == PE7_SELECT_A::TWI3_SDA
1230 }
1231 #[doc = "`110`"]
1232 #[inline(always)]
1233 pub fn is_d_jtag_ck(&self) -> bool {
1234 *self == PE7_SELECT_A::D_JTAG_CK
1235 }
1236 #[doc = "`1000`"]
1237 #[inline(always)]
1238 pub fn is_rgmii_clkin_rmii_rxer(&self) -> bool {
1239 *self == PE7_SELECT_A::RGMII_CLKIN_RMII_RXER
1240 }
1241 #[doc = "`1110`"]
1242 #[inline(always)]
1243 pub fn is_pe_eint7(&self) -> bool {
1244 *self == PE7_SELECT_A::PE_EINT7
1245 }
1246 #[doc = "`1111`"]
1247 #[inline(always)]
1248 pub fn is_io_disable(&self) -> bool {
1249 *self == PE7_SELECT_A::IO_DISABLE
1250 }
1251 #[doc = "`1`"]
1252 #[inline(always)]
1253 pub fn is_output(&self) -> bool {
1254 *self == PE7_SELECT_A::OUTPUT
1255 }
1256 #[doc = "`11`"]
1257 #[inline(always)]
1258 pub fn is_uart5_rx(&self) -> bool {
1259 *self == PE7_SELECT_A::UART5_RX
1260 }
1261 #[doc = "`101`"]
1262 #[inline(always)]
1263 pub fn is_owa_out(&self) -> bool {
1264 *self == PE7_SELECT_A::OWA_OUT
1265 }
1266 #[doc = "`111`"]
1267 #[inline(always)]
1268 pub fn is_r_jtag_ck(&self) -> bool {
1269 *self == PE7_SELECT_A::R_JTAG_CK
1270 }
1271}
1272#[doc = "Field `pe7_select` writer - PE7 Select"]
1273pub type PE7_SELECT_W<'a, REG> = crate::FieldWriter<'a, REG, 4, PE7_SELECT_A>;
1274impl<'a, REG> PE7_SELECT_W<'a, REG>
1275where
1276 REG: crate::Writable + crate::RegisterSpec,
1277 REG::Ux: From<u8>,
1278{
1279 #[doc = "`0`"]
1280 #[inline(always)]
1281 pub fn input(self) -> &'a mut crate::W<REG> {
1282 self.variant(PE7_SELECT_A::INPUT)
1283 }
1284 #[doc = "`10`"]
1285 #[inline(always)]
1286 pub fn ncsi0_d3(self) -> &'a mut crate::W<REG> {
1287 self.variant(PE7_SELECT_A::NCSI0_D3)
1288 }
1289 #[doc = "`100`"]
1290 #[inline(always)]
1291 pub fn twi3_sda(self) -> &'a mut crate::W<REG> {
1292 self.variant(PE7_SELECT_A::TWI3_SDA)
1293 }
1294 #[doc = "`110`"]
1295 #[inline(always)]
1296 pub fn d_jtag_ck(self) -> &'a mut crate::W<REG> {
1297 self.variant(PE7_SELECT_A::D_JTAG_CK)
1298 }
1299 #[doc = "`1000`"]
1300 #[inline(always)]
1301 pub fn rgmii_clkin_rmii_rxer(self) -> &'a mut crate::W<REG> {
1302 self.variant(PE7_SELECT_A::RGMII_CLKIN_RMII_RXER)
1303 }
1304 #[doc = "`1110`"]
1305 #[inline(always)]
1306 pub fn pe_eint7(self) -> &'a mut crate::W<REG> {
1307 self.variant(PE7_SELECT_A::PE_EINT7)
1308 }
1309 #[doc = "`1111`"]
1310 #[inline(always)]
1311 pub fn io_disable(self) -> &'a mut crate::W<REG> {
1312 self.variant(PE7_SELECT_A::IO_DISABLE)
1313 }
1314 #[doc = "`1`"]
1315 #[inline(always)]
1316 pub fn output(self) -> &'a mut crate::W<REG> {
1317 self.variant(PE7_SELECT_A::OUTPUT)
1318 }
1319 #[doc = "`11`"]
1320 #[inline(always)]
1321 pub fn uart5_rx(self) -> &'a mut crate::W<REG> {
1322 self.variant(PE7_SELECT_A::UART5_RX)
1323 }
1324 #[doc = "`101`"]
1325 #[inline(always)]
1326 pub fn owa_out(self) -> &'a mut crate::W<REG> {
1327 self.variant(PE7_SELECT_A::OWA_OUT)
1328 }
1329 #[doc = "`111`"]
1330 #[inline(always)]
1331 pub fn r_jtag_ck(self) -> &'a mut crate::W<REG> {
1332 self.variant(PE7_SELECT_A::R_JTAG_CK)
1333 }
1334}
1335impl R {
1336 #[doc = "Bits 0:3 - PE0 Select"]
1337 #[inline(always)]
1338 pub fn pe0_select(&self) -> PE0_SELECT_R {
1339 PE0_SELECT_R::new((self.bits & 0x0f) as u8)
1340 }
1341 #[doc = "Bits 4:7 - PE1 Select"]
1342 #[inline(always)]
1343 pub fn pe1_select(&self) -> PE1_SELECT_R {
1344 PE1_SELECT_R::new(((self.bits >> 4) & 0x0f) as u8)
1345 }
1346 #[doc = "Bits 8:11 - PE2 Select"]
1347 #[inline(always)]
1348 pub fn pe2_select(&self) -> PE2_SELECT_R {
1349 PE2_SELECT_R::new(((self.bits >> 8) & 0x0f) as u8)
1350 }
1351 #[doc = "Bits 12:15 - PE3 Select"]
1352 #[inline(always)]
1353 pub fn pe3_select(&self) -> PE3_SELECT_R {
1354 PE3_SELECT_R::new(((self.bits >> 12) & 0x0f) as u8)
1355 }
1356 #[doc = "Bits 16:19 - PE4 Select"]
1357 #[inline(always)]
1358 pub fn pe4_select(&self) -> PE4_SELECT_R {
1359 PE4_SELECT_R::new(((self.bits >> 16) & 0x0f) as u8)
1360 }
1361 #[doc = "Bits 20:23 - PE5 Select"]
1362 #[inline(always)]
1363 pub fn pe5_select(&self) -> PE5_SELECT_R {
1364 PE5_SELECT_R::new(((self.bits >> 20) & 0x0f) as u8)
1365 }
1366 #[doc = "Bits 24:27 - PE6 Select"]
1367 #[inline(always)]
1368 pub fn pe6_select(&self) -> PE6_SELECT_R {
1369 PE6_SELECT_R::new(((self.bits >> 24) & 0x0f) as u8)
1370 }
1371 #[doc = "Bits 28:31 - PE7 Select"]
1372 #[inline(always)]
1373 pub fn pe7_select(&self) -> PE7_SELECT_R {
1374 PE7_SELECT_R::new(((self.bits >> 28) & 0x0f) as u8)
1375 }
1376}
1377impl W {
1378 #[doc = "Bits 0:3 - PE0 Select"]
1379 #[inline(always)]
1380 #[must_use]
1381 pub fn pe0_select(&mut self) -> PE0_SELECT_W<PE_CFG0_SPEC> {
1382 PE0_SELECT_W::new(self, 0)
1383 }
1384 #[doc = "Bits 4:7 - PE1 Select"]
1385 #[inline(always)]
1386 #[must_use]
1387 pub fn pe1_select(&mut self) -> PE1_SELECT_W<PE_CFG0_SPEC> {
1388 PE1_SELECT_W::new(self, 4)
1389 }
1390 #[doc = "Bits 8:11 - PE2 Select"]
1391 #[inline(always)]
1392 #[must_use]
1393 pub fn pe2_select(&mut self) -> PE2_SELECT_W<PE_CFG0_SPEC> {
1394 PE2_SELECT_W::new(self, 8)
1395 }
1396 #[doc = "Bits 12:15 - PE3 Select"]
1397 #[inline(always)]
1398 #[must_use]
1399 pub fn pe3_select(&mut self) -> PE3_SELECT_W<PE_CFG0_SPEC> {
1400 PE3_SELECT_W::new(self, 12)
1401 }
1402 #[doc = "Bits 16:19 - PE4 Select"]
1403 #[inline(always)]
1404 #[must_use]
1405 pub fn pe4_select(&mut self) -> PE4_SELECT_W<PE_CFG0_SPEC> {
1406 PE4_SELECT_W::new(self, 16)
1407 }
1408 #[doc = "Bits 20:23 - PE5 Select"]
1409 #[inline(always)]
1410 #[must_use]
1411 pub fn pe5_select(&mut self) -> PE5_SELECT_W<PE_CFG0_SPEC> {
1412 PE5_SELECT_W::new(self, 20)
1413 }
1414 #[doc = "Bits 24:27 - PE6 Select"]
1415 #[inline(always)]
1416 #[must_use]
1417 pub fn pe6_select(&mut self) -> PE6_SELECT_W<PE_CFG0_SPEC> {
1418 PE6_SELECT_W::new(self, 24)
1419 }
1420 #[doc = "Bits 28:31 - PE7 Select"]
1421 #[inline(always)]
1422 #[must_use]
1423 pub fn pe7_select(&mut self) -> PE7_SELECT_W<PE_CFG0_SPEC> {
1424 PE7_SELECT_W::new(self, 28)
1425 }
1426 #[doc = r" Writes raw bits to the register."]
1427 #[doc = r""]
1428 #[doc = r" # Safety"]
1429 #[doc = r""]
1430 #[doc = r" Passing incorrect value can cause undefined behaviour. See reference manual"]
1431 #[inline(always)]
1432 pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
1433 self.bits = bits;
1434 self
1435 }
1436}
1437#[doc = "PE Configure Register 0\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`pe_cfg0::R`](R). You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`pe_cfg0::W`](W). You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
1438pub struct PE_CFG0_SPEC;
1439impl crate::RegisterSpec for PE_CFG0_SPEC {
1440 type Ux = u32;
1441}
1442#[doc = "`read()` method returns [`pe_cfg0::R`](R) reader structure"]
1443impl crate::Readable for PE_CFG0_SPEC {}
1444#[doc = "`write(|w| ..)` method takes [`pe_cfg0::W`](W) writer structure"]
1445impl crate::Writable for PE_CFG0_SPEC {
1446 const ZERO_TO_MODIFY_FIELDS_BITMAP: Self::Ux = 0;
1447 const ONE_TO_MODIFY_FIELDS_BITMAP: Self::Ux = 0;
1448}
1449#[doc = "`reset()` method sets pe_cfg0 to value 0"]
1450impl crate::Resettable for PE_CFG0_SPEC {
1451 const RESET_VALUE: Self::Ux = 0;
1452}